Re: [LAD] No nagging, a serious question

From: Ralf Mardorf <ralf.mardorf@email-addr-hidden-dsl.net>
Date: Sun Jul 04 2010 - 23:01:49 EEST

On Sun, 2010-07-04 at 15:46 -0400, Paul Davis wrote:
> On Sun, Jul 4, 2010 at 3:39 PM, Ralf Mardorf <ralf.mardorf@email-addr-hidden-dsl.net> wrote:
> > I once did a MIDI extension for SpeechBasic to program a real time MIDI
> > sound sampler on BASIC for the C64, for example
> >
> > $1810 LDA $DEO6
> > $1813 LSR
> > $1814 BCC $1810
> > $1816 LDA $DE07; read MIDI event byte, usually followed by RTS
>
> this code has nothing whatsoever to do with anything in a multi-user,
> multitasking OS except for the very internal part of an interrupt
> handler.
>
> the code in ALSA that you find complex or whatever is code associated
> with moving data between kernel space and user space, and with sharing
> resources. furthermore, ALSA contains a lot of code related to the
> idea of sequencing MIDI (i.e. scheduling it) and routing it between
> clients, none of which is even remotely imagined by the code above. if
> you want to work on an operating system that does cooperative
> multitasking (if any multitasking at all), and where all the registers
> of all the devices are accessible to any program, then you can get
> back to the style of programming you show above. if you want the
> benefits that an OS like Linux (or windows, or os x, or bsd or ...)
> offer, then you have to put up with the fact that nothing is that
> simple anymore.
>
> of course, if you use JACK MIDI, then from the application's point of
> view, it really is just about that simple :)

Is there literature how to learn C, C++ for Linux audio, when learning
C, C++ from the beginning? What kind of C, C++ code needs to be avoided
and what kind of programming is existential etc..
I still got some hints, but some books, e-books might be better.

- Ralf

_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-dev
Received on Mon Jul 5 00:15:03 2010

This archive was generated by hypermail 2.1.8 : Mon Jul 05 2010 - 00:15:03 EEST