<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#f8fcf8>
<DIV><FONT face=Arial size=2>Hi David,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Yes real-time messages can replace expected data
just like the example you gave.</FONT></DIV>
<DIV><FONT face=Arial size=2>Yes the real time message is guaranteed to be one
byte only, but more than one real-time message is possible.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Like:</FONT></DIV>
<DIV><FONT face=Arial size=2>Note on</FONT></DIV>
<DIV><FONT face=Arial size=2>Note value</FONT></DIV>
<DIV><FONT face=Arial size=2>Real-time active sensing </FONT></DIV>
<DIV><FONT face=Arial size=2>Real-time timing clock</FONT></DIV>
<DIV><FONT face=Arial size=2>Note velocity</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Or:</FONT></DIV>
<DIV><FONT face=Arial size=2>
<DIV><FONT face=Arial size=2>Note on</FONT></DIV>
<DIV>Real-time active sensing </DIV>
<DIV><FONT face=Arial size=2>Note value</FONT></DIV>
<DIV><FONT face=Arial size=2>Real-time timing clock</FONT></DIV>
<DIV><FONT face=Arial size=2>Note velocity</FONT></DIV></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>The real time messages are:</FONT></DIV>
<DIV><FONT face=Arial size=2>$F8 - Timing clock</FONT></DIV>
<DIV><FONT face=Arial size=2>$F9 - undefined</FONT></DIV>
<DIV><FONT face=Arial size=2>$FA - start</FONT></DIV>
<DIV><FONT face=Arial size=2>$FB - continue</FONT></DIV>
<DIV><FONT face=Arial size=2>$FC - stop</FONT></DIV>
<DIV><FONT face=Arial size=2>$FD - undefined</FONT></DIV>
<DIV><FONT face=Arial size=2>$FE - active sensing</FONT></DIV>
<DIV><FONT face=Arial size=2>$FF - system reset</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>The other one byte messages ($F1...$F7) are not
real-time and not allowed to go in-between the data of other
messages.</FONT></DIV>
<DIV><FONT face=Arial size=2>However I like to pars them as if they
where real-time messages, part for easy of coding.</FONT></DIV>
<DIV><FONT face=Arial size=2>But also because of timing.</FONT></DIV>
<DIV><FONT face=Arial size=2>"Midi time code quarter frame" ($F1) is one of
them, you don't like that one waiting in a FIFO too long.</FONT></DIV>
<DIV><FONT face=Arial size=2>And having "Song select"($F3) or "Song position
pointer"($F2) waiting in the FIFO while $FA "start" is received and
executed in is also a bit sloppy.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Best use a method that takes care of these things
automatically.</FONT></DIV>
<DIV><FONT face=Arial size=2>Like the one I described in the other
message.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Cheers,</FONT></DIV>
<DIV><FONT face=Arial size=2>Theo</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<BLOCKQUOTE
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV
style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B>
<A title=davebr@earthlink.net href="mailto:davebr@earthlink.net">David
Brown</A> </DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A title=synth-diy@dropmix.xs4all.nl
href="mailto:synth-diy@dropmix.xs4all.nl">synth-diy@dropmix.xs4all.nl</A>
</DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Friday, July 16, 2004 6:14 PM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [sdiy] Processing Midi -
Dropping Notes</DIV>
<DIV><BR></DIV><FONT size=3>At 09:34 PM 7/13/2004, you wrote:<BR></FONT>
<BLOCKQUOTE class=cite cite="" type="cite"><FONT face=arial size=2>For even
more fun there is also "real time messages" that can come in-between the
bytes of other messages.<BR></FONT><FONT size=3> <BR></FONT><FONT
face=arial size=2>The real time messages are one byte only.<BR>So just check
if a message is real time, then do something with it, like nothing at
all.</FONT></BLOCKQUOTE><BR>Can you clarify the real time messages? I'm
writing my own MIDI parser and I don't know if I have handled it
correctly. Specifically, can a real time message replace the expected
data in a message? For example ...<BR><BR>Note on command<BR>Note
value<BR>Real time message<BR>Note velocity<BR><BR>In this case, is the real
time message always guaranteed to be one byte?<BR><BR>Thanks. - Dave
</BLOCKQUOTE></BODY></HTML>