diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2010-07-26 23:47:26 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2010-07-26 23:47:26 -0400 |
commit | cadaf0e35d4530a0aa3f3100c3c0e5c96d9f0556 (patch) | |
tree | e87fca3a157363d1ca064258a44704dd1a289305 /src/bootsplash.c | |
parent | 2641186e7650d1dbe9249f57fe005581f31da402 (diff) | |
download | seabios-hppa-cadaf0e35d4530a0aa3f3100c3c0e5c96d9f0556.zip seabios-hppa-cadaf0e35d4530a0aa3f3100c3c0e5c96d9f0556.tar.gz seabios-hppa-cadaf0e35d4530a0aa3f3100c3c0e5c96d9f0556.tar.bz2 |
Be sure to disable bootsplash on all BIOS boot cases.
Disable the bootsplash on cbfs payload exec, and if something hooks
int19.
Also, be sure to only disable the bootsplash (revert to text mode)
once.
Diffstat (limited to 'src/bootsplash.c')
-rw-r--r-- | src/bootsplash.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/bootsplash.c b/src/bootsplash.c index b96e066..9ff81b3 100644 --- a/src/bootsplash.c +++ b/src/bootsplash.c @@ -10,6 +10,7 @@ #include "config.h" // CONFIG_* #include "util.h" // dprintf #include "jpeg.h" // splash +#include "biosvar.h" // SET_EBDA /**************************************************************** @@ -99,7 +100,7 @@ static void enable_vga_text_console(void) call16_int10(&br); // Write to screen. - printf("Starting SeaBIOS (version %s)\n\n", VERSION); + printf("SeaBIOS (version %s)\n\n", VERSION); } void enable_vga_console(void) @@ -181,7 +182,7 @@ void enable_vga_console(void) dprintf(8, "bytes per scanline: %d\n", mode_info->bytes_per_scanline); dprintf(8, "bits per pixel: %d\n", mode_info->bits_per_pixel); - /* Look for bootsplash.jpg in CBFS and decompress it... */ + /* Decompress jpeg */ dprintf(8, "Copying boot splash screen...\n"); cbfs_copyfile(file, jpeg, filesize); dprintf(8, "Decompressing boot splash screen...\n"); @@ -194,6 +195,7 @@ void enable_vga_console(void) /* Show the picture */ iomemcpy(framebuffer, picture, imagesize); + SET_EBDA(bootsplash_active, 1); cleanup: free(jpeg); @@ -210,7 +212,8 @@ gotext: void disable_bootsplash(void) { - if (! CONFIG_BOOTSPLASH) + if (! CONFIG_BOOTSPLASH || !GET_EBDA(bootsplash_active)) return; + SET_EBDA(bootsplash_active, 0); enable_vga_text_console(); } |