<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Neil's flowchart looks right. Here's another way to look at it
from a state machine perspective. For me personally, coding from a
flow chart leads to spaghetti code but a state machine translates
to code much easier.</p>
<p><a href="http://myplace.frontier.com/~jspeth/MIDI_FSM.pdf">http://myplace.frontier.com/~jspeth/MIDI_FSM.pdf</a></p>
<p>Advice: There is little value and it's probably even detrimental
to attempt a starting MIDI reception code body. You need to fully
implement the MIDI reception and decoding parts. You can opt to
disregard the actions that should be taken after an unambiguous
MIDI message is received but you need to handle each byte.</p>
<p>JJS<br>
</p>
<div class="moz-cite-prefix">On 3/20/2020 12:26 PM, Neil Johnson
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CACZGMxJ=r0q4Eb4ts-BFDeZ+J60vQZYtPDv9=aw8+zfzMk8T=w@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div>You mean like this:</div>
<div><br>
</div>
<div><a href="https://github.com/nejohnson/miby"
moz-do-not-send="true">https://github.com/nejohnson/miby</a></div>
<div><br>
</div>
<div>Look in the /doc folder for a PDF.<br>
</div>
<div><br>
</div>
<div>Neil<br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Fri, 20 Mar 2020 at 19:17,
Tom Wiltshire <<a href="mailto:tom@electricdruid.net"
target="_blank" moz-do-not-send="true">tom@electricdruid.net</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>I think a flowchart is a good idea, but I’d say that the
voice assignment part is a separate thing from the MIDI.
Voice handling is a whole area in its own right.
<div>
<div><br>
</div>
<div>Tom</div>
<div><br>
<div>
<div>
<div
style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">==================<br>
Electric Druid<br>
Synth & Stompbox DIY<br>
==================</div>
</div>
</div>
<div><br>
<blockquote type="cite">
<div>On 20 Mar 2020, at 19:10, Jean-Pierre
Desrochers <<a href="mailto:jpdesroc@oricom.ca"
target="_blank" moz-do-not-send="true">jpdesroc@oricom.ca</a>>
wrote:</div>
<br>
<div>
<div>One idea came to my mind reading all your
great comments:<br>
Would it be usefull for anybody in this DIY
forum including newbies like me<br>
that someone would publish a 'starting' MIDI
receiving flowchart<br>
of the basics from the incoming bytes to the
actual final process<br>
of each received notes ?<br>
For example this helping flowchart would show
the basic steps<br>
of first: the interrupt function (USART Rx flag
test, RxBuffer[] updating, etc...)<br>
Then the behaviour of the main loop processing
each received byte<br>
for let's say a polyphonic MIDI to CV 8 voices
module ?<br>
And only for one MIDI channel for simplicity to
understanding ?<br>
I did in the past a big flowchart for my MIDI to
CV 6 voices module<br>
That I could 'squeeze'to keep only what's stated
above.<br>
This could be a starting point for anybody who
wants to 'correct' things<br>
and this way the DIY forum would have a 'list
standardized' flowchart<br>
For anybody to use in the future..<br>
This would answer many design questions to come.<br>
Again, a small flowchart of how to receive MIDI
bytes for only one MIDI channel<br>
And process for polyphonic use (8 voices).<br>
If this suggestion interests enough diyers I
could put my cleaned out<br>
Flowchart on the list as a start..<br>
Or maybe I'll be the only guy to be interested
in that<br>
Since many of you gurus have already been
through these codings..<br>
JP <br>
<br>
<br>
<br>
<br>
_______________________________________________<br>
Synth-diy mailing list<br>
<a href="mailto:Synth-diy@synth-diy.org"
target="_blank" moz-do-not-send="true">Synth-diy@synth-diy.org</a><br>
<a
href="http://synth-diy.org/mailman/listinfo/synth-diy"
target="_blank" moz-do-not-send="true">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
_______________________________________________<br>
Synth-diy mailing list<br>
<a href="mailto:Synth-diy@synth-diy.org" target="_blank"
moz-do-not-send="true">Synth-diy@synth-diy.org</a><br>
<a href="http://synth-diy.org/mailman/listinfo/synth-diy"
rel="noreferrer" target="_blank" moz-do-not-send="true">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
</blockquote>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
Synth-diy mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Synth-diy@synth-diy.org">Synth-diy@synth-diy.org</a>
<a class="moz-txt-link-freetext" href="http://synth-diy.org/mailman/listinfo/synth-diy">http://synth-diy.org/mailman/listinfo/synth-diy</a>
</pre>
</blockquote>
</body>
</html>