[interfacekit] Graphics Drivers and the App Server (LONG)

>What I'd like to be doing is just using the existing drivers.  Of course
>that just cops out of the question "How do I use the existing drivers?",
>but I'm afraid I'm going to have to do that for the moment.  The online
>BeBook no longer has the section on writing graphics drivers --
>fortunately, I have the "Advanced Developers Guide" in dead tree format;
>I'll try to find some time to throw that into at least a text document.
>
>I was reading this section the other night and there is a specific entry
>function for graphics drivers that we would use to get at the frame
>buffer and any accelerated functions (not the same thing as the
>accelerant, I'm afraid).  You hand the function opcodes and data
>buffers.  I'll get the docs up ASAP and we'll go from there.
>
>In other news, I subscribed both you and Fred to the interface kit
>mailing list; you should be getting notifications, and this mail should
>be coming to you via that route anyway.  Yuri is already subscribed, and
>there is another guy who is interested in working with the team that may
>be joining us soon.
>
>I still haven't dug through all of my vacation mail; I'll try to get
>through it all tonight. =P
It's funny that you mentioned the Advanced Topics guide. I've got it, too, 
and read through it quite a bit last night after I logged off for the day. I 
understand how the functions are called and actually accessed, BUT I'm still 
trying to figure out what to *do* with them. Thoughts?

>I really dont think that the app_server does any drawing.  the drawing
>functions I am guessing are in the app kit.  when you see the desktop thats
>obviously the tracker.  I think the app_server is just the message deal
>telling you when you should redraw a sertain area and stuff like that.  the
>app_server might change video resolutions and refresh rate for you, but
>thats maybe it.  I'm guessing all of this but drawing through messages
>wouldnt be ideal (i think).  app_server is just a management thread, thats
>all.  of course I'm mostly guessing all of this, but i'm getting it from all
>of the discussions me and DW had.
>
>-yt
I've been doing a *lot* of researching, so all this info is my high point for 
today - it's been the Day from Hell (tm) today.


1) The app_server does a *lot* of things, but the major tasks are GUI 
management, starting apps, messaging, and dealing with input.

2) The registrar (which is also a project of ours) publishes BRoster kinds of 
things. It and the app_server are both contacted by a BApplication 
constructor

3) I've been in contact with George Hoffman at Be, who is the App Server guy, 
and he is willing to give us any info which he can legally tell us. According 
to him, this would be the kind of info that they would put in a newsletter.

4) We have a lot of resources to pull from: Be Advanced Topics, the Be Book, 
the BeOS Bible, the Newsletter Archives, the BootScript, Sample Code, and the 
list goes on.

5) Some useful tools: AreaWatch, objdump, listport, ps

6) There was a dummy app_server used in debugging graphics drivers at Be 
which was available by request to William Adams, but I can't track him down 
or the program. Anyone seen this or have it?


Concerning #1 (and to correct Yuri), the app_server manages screen 
resolution, color depth, etc, by calling graphics driver functions. It also 
manages the mouse cursor the same way. Anyway, if you kill everything but the 
app_server and the input server, you *still* have desktops and apps that can 
be run.

--DW


Other related posts: