On Fri, 2010-06-25 at 16:18 -0600, Gustin Johnson wrote:
> On 10-06-25 03:31 PM, Ralf Mardorf wrote:
> > On Fri, 2010-06-25 at 15:05 -0600, Gustin Johnson wrote:
> >> On 10-06-25 02:02 PM, Ralf Mardorf wrote:
> >>> Hi :)
> >>>
> >>> I guess no answer is an answer :D.
> >>>
> >> Not necessarily.  You could be asking the wrong question and or in the
> >> wrong place.
> >>
> >>> There are several ways to program for asynchronous serial interfaces,
> >>> but there's only one way regarding to real time MIDI.
> >>>
> >>
> >>> When I programmed on Assembler in the 80ies I directly talked to the
> >>> UART, and request CTS/RTS for every single byte.
> >>>
> >>> It's also possible not to use CTS/RTS for every single byte, but than
> >>> you need to add headroom for the time. While it wouldn't be such a
> >>> drama, if 1ms headroom would be 1ms, it's a drama because for such a
> >>> long time a lot of IRQs are able to produce jitter, but a constant
> >>> latency.
> >>>
> >>> I guess the MIDI coders for Linux did a bad job. I might be wrong, but
> >>> as I said before, getting no answer is getting an answer :(.
> >>
> >> I would hesitate to jump to this conclusion if I were you.  I would also
> >> rephrase this.  Saying someone did a bad job but providing no real proof
> >> is not usually a successful strategy in the open source world.
> >>
> >> Also getting no answer may indicate a completely different problem.
> >>
> >>> Hopefully I'm just paranoid and wrong ;).
> >>
> >> I don't think paranoia is the right word.
> <snip>
> > 
> > The question is very simple. The UART (used by MPU etc.) in the 80ies
> > very seldom the ACIA too, can be used directly on Assembler or by
> > grotesque detours and C must not be the bad, if one knows what he does
> > on C. At least I wonder about the statements from Paul Davis, the Guru
> > for RT Linux. It is completely nonsense what he has written, that there
> > anything regarding to the time is fixed for an asynchronous serial
> > interface. If you take care about the CTS/RTS there's nothing fixed. He
> > doesn't know what he was talking about. I do know what I'm talking
> > about, hence it was my job and in addition I did what today is called
> > FLOSS myself a long time before there was Linux rt.
> 
> Did the hardware you use in any way resemble modern hardware? Personal
> attacks are probably not the best way to get the help.  Just a little a
> suggestion.
> > 
> > The big OZ Mr. Davis did wrote nonsense, idiotic stuff, he complete has
> > no knowledge about RT MIDI regarding to software + hardware.
> > 
> <snip>
> > PS: Is MIDI for Linux an RT thread? Is it? Or could e.g. the graphics
> > interrupt the movement from ALSA seq to the MIDI interface?
> > 
> I don't know, but I bet the answer is in the source code.
> 
> > I've got no knowledge about Linux, but I do have knowledge about
> > hardware + software regarding to music and especially regarding to MIDI.
> 
> > 
> > What's bad with my question?
> 
> I am not sure to which vague question you are referring.
> > 
> > Jitterless MIDI does mean you have to program for MIDI rt too, this
> > means you request CTS/RTS and do write one byte directly to the MIDI
> > interface. If it should be done on Linux in any other way, than it's
> > incompetent programed.
> > 
> So, how was it done?  You have oversimplified the equation.
> 
> > ALSA seq might not be the bad, but how is it handled to talk to the
> > UART? Is runtime lib a talking to runtime lib b? If so the coders did a
> > bad job. This isn't the way you can handle an asynchronous serial
> > interface for real time.
> > 
> You know, I am not sure how it was done.  I am sure the answer is there
> in the source code if you want to find out.


I'm not able to read source code a, based on the headers b, c, d, e, f,
g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z.

What is the result for the machine code (Assembler ... yes, I'm able to
disassemble the result of the C code)?

I've forgotten, the C64 was limited to 64kiB and you even don't need
1kiB to program a stable sequencer.

It takes weeks to read around 1kiB on Assembler. Do you know how much
MiBs of Assembler are produced by a C compiler?

1. I can't read Linux C.
2. Even if I would be able to do it, this isn't important ...

What does the machine code, the run time libs do, regarding to real time
for MIDI?

Why should I read the code, when i could ask the coders? And now the
bomb drops! There is no answer, because they don't know what they do,
resp. what they use. They just use some headers, believe in rt for audio
and don't care about oldish asynchronous slow interfaces and the way the
Linux libs they do handle does. Instead they say it's oldish and any
failure is caused because of the oldish technically specifications. They
are wrong, oldish sequencers for 65xx, 68xxx microchips don't have
jitter, because much more gifted people but me, e.g. Gerhard Lengeling
(I learn a lot by hacking his codes), but also idiots like me, did
program a compiletly other and better, perfect way.

I can't read Linux code, it's cryptic and doesn't say anything about the
translation to the machine code, but machine code is required, resp.
absolut knowledge about how the c code is translated to machine code.

Regarding to Linux you have much more knowledge, but I do have, but you
doesn't have any knowledge regarding to oldish asynchronous MIDI
interfaces, that needs to be controlled on rt.

You can't just read the C, C++ or what ever compiler code. You also need
to have knowledge about the way the code is translated to machine code
(= Assemble if you prefer it the human readable way).

I asked about this!

Cheers,

Ralf

_______________________________________________
64studio-users mailing list
[email protected]
http://lists.64studio.com/mailman/listinfo/64studio-users

Reply via email to