from distro kernels diff -urN 28rc1/drivers/video/fbcon.c 28rc1_aac/drivers/video/fbcon.c --- 28rc1/drivers/video/fbcon.c 2004-10-24 00:45:59.000000000 +0300 +++ 28rc1_aac/drivers/video/fbcon.c 2004-10-24 00:58:11.000000000 +0300 @@ -46,6 +46,9 @@ * o mfb Monochrome * o vga VGA characters/attributes * + * Gerard Sharp (gsharp@ihug.co.nz) contributed alterations providing a line + * of text above the bootlogo stating the kernel version. + * * To do: * * - Implement 16 plane mode (iplan2p16) @@ -58,6 +61,7 @@ #undef FBCONDEBUG +#include #include #include #include @@ -662,7 +666,8 @@ /* Need to make room for the logo */ int cnt, step, erase_char; - logo_lines = (LOGO_H + fontheight(p) - 1) / fontheight(p); +/* Make logo 1 (text) line taller - for version text */ + logo_lines = (LOGO_H + (fontheight(p)*2) - 1) / fontheight(p); q = (unsigned short *)(conp->vc_origin + conp->vc_size_row * old_rows); step = logo_lines * old_cols; for (r = q - logo_lines * old_cols; r < q; r++) @@ -1554,6 +1559,14 @@ if (p->dispsw->clear_margins && vt_cons[unit]->vc_mode == KD_TEXT) p->dispsw->clear_margins(conp, p, 0); if (logo_shown == -2) { +/* Display a line above the Boot Logo to state + what version of the kernel we are booting */ + char welcometext[] = "Linux " UTS_RELEASE; + unsigned short welcomestring[ sizeof(welcometext) ]; + int i; + for(i = 0; i < sizeof(welcometext); i++) + welcomestring[i] = 0x0700 | welcometext[i]; + fbcon_putcs( conp, welcomestring, sizeof(welcometext), 0, 0 ); logo_shown = fg_console; fbcon_show_logo(); /* This is protected above by initmem_freed */ update_region(fg_console, @@ -2149,7 +2162,10 @@ /* Return if the frame buffer is not mapped */ if (!fb) return 0; - + + /* Move Penguin(s) down one line; for version line. */ + fb += fontheight(p) * line; + /* * Set colors if visual is PSEUDOCOLOR and we have enough colors, or for * DIRECTCOLOR