<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Windows-1252">
<TITLE>Message</TITLE>
<META content="MSHTML 6.00.2800.1400" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#f8fcf8>
<DIV><SPAN class=680443120-16072004><FONT face=Arial
color=#0000ff>Theo,</FONT></SPAN></DIV>
<DIV><SPAN class=680443120-16072004><FONT face=Arial
color=#0000ff></FONT></SPAN> </DIV>
<DIV><SPAN class=680443120-16072004><FONT face=Arial color=#0000ff>The issuance
of a Note On message should preclude the need for an Active Sense
message. I have no doubt that folks violate the intent of
Active Sensing by tying it to some blind timer based routine, but Active Sensing
is intended to occur when there is no other traffic that would indicate the MIDI
link is "in service".</FONT></SPAN></DIV>
<DIV><SPAN class=680443120-16072004><FONT face=Arial
color=#0000ff></FONT></SPAN> </DIV>
<DIV><SPAN class=680443120-16072004><FONT face=Arial
color=#0000ff>regards,</FONT></SPAN></DIV>
<DIV><SPAN class=680443120-16072004><FONT face=Arial
color=#0000ff>p</FONT></SPAN></DIV>
<DIV><SPAN class=680443120-16072004><FONT face=Arial
color=#0000ff></FONT></SPAN> </DIV>
<DIV></DIV>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left><FONT face=Tahoma
size=2>-----Original Message-----<BR><B>From:</B>
owner-synth-diy@dropmix.xs4all.nl [mailto:owner-synth-diy@dropmix.xs4all.nl]
<B>On Behalf Of </B>Theo<BR><B>Sent:</B> Friday, July 16, 2004 1:22
PM<BR><B>To:</B> synth-diy@dropmix.xs4all.nl; David Brown<BR><B>Subject:</B> Re:
[sdiy] Processing Midi - Dropping Notes<BR><BR></FONT></DIV>
<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>