From: James S. <jsi...@ac...> - 2000-04-08 17:58:31
|
Hi!! Well I see the idea of head handling is not quit their just yet. I merged Dominik's work into CVS. Good work :) I see Vojtech has been busy as well :) The other part of the post talked about the cleanup of the data structs for the console system. They are just a mess. Take console.h for example. In theory it should be VT independent. It coudl work with serial consoles and other types of consoles like lpcon. Whats wrong? Well it has in the file -------------------------------------------------------------------- struct vc_data; struct console_font_op; /* * this is what the terminal answers to a ESC-Z or csi0c query. */ #define VT100ID "\033[?1;2c" #define VT102ID "\033[?6c" struct consw { ... [snip] .... } extern struct consw *conswitchp; extern struct consw dummy_con; /* dummy console buffer */ extern struct consw fb_con; /* frame buffer based console */ extern struct consw vga_con; /* VGA text console */ extern struct consw newport_con; /* SGI Newport console */ extern struct consw prom_con; /* SPARC PROM console */ void take_over_console(struct consw *sw, int first, int last, int deflt); void give_up_console(struct consw *sw); /* scroll */ #define SM_UP (1) #define SM_DOWN (2) /* cursor */ #define CM_DRAW (1) #define CM_ERASE (2) #define CM_MOVE (3) ------------------------------------------------------------------- None of this belongs in console.h. Another files have similar messes. So I like to suggest the following. console.h just have the basic functions to get a console going independent of the hardware underneath. vc_data represents the virtual console. We could seperate out the VT switching code and make it generic. This allows for VCs on serial consoles and other types of consoles. Thus vc_data can act as a place to store the console current state on VT switching. Move all video terminal related data to vt_kern.h. Get ride of kd.h and merge it in its proper place. So what do you think ? Opinions, flames :-> "Look it's a text editor, no it's a OS, no it's Emacs" James Simmons ____/| fbdev/gfx developer \ o.O| http://www.linux-fbdev.org =(_)= http://linuxgfx.sourceforge.net U |