[interfacekit] App Server Startup procedures and question

I've been working hard on figuring out a base for the app_server using the 
BWindowScreen class this weekend and I seem to have somewhat of a step-by-
step for startup. Let me know if there is something else we need to add to 
this process.

App Server Startup procedures
-------------------------------
1) Load and make use of global settings
2) Initialize graphics driver
3) Initialize desktop (defined as the collection of workspaces)

Graphics Driver Initialization (calls to control_graphics_card())
-------------------------------
1) open graphics driver
    A) look in current path. If empty and last path, halt system. If merely 
empty, repeat with next path.
        a)Write to serial port "Attempting to load <name> as graphics driver"
        b)call with B_OPEN_GRAPHICS_CARD. If return B_ERROR, call with 
B_CLOSE_GRAPHICS_CARD and read next entry in path.
    B) write to serial port "Using <name> as graphics driver"
2) Generate system palette
3) call B_CONFIG_GRAPHICS_CARD
4) call B_GET_GRAPHICS_CARD_HOOKS
5) call B_GET_GRAPHICS_CARD_INFO

Driver search path list
-------------------------
1) /fd/beos/system/add-ons/app_server
2) /boot/home/config/add-ons/app_server
3) /boot/beos/system/add-ons/app_server

Desktop Initialization
---------------------------
1) Create number of workspaces according to user settings (or defaults)
2) Set workspace settings to what has been loaded in preferences
3) activate_workspace(0)

One question: I attempted playing around with the graphics driver stuff and 
ran into one slight snag - the linker can't find control_graphics_card. 
Anyone know how to get around this?

--DW


Other related posts: