aboutsummaryrefslogtreecommitdiffstats
path: root/com32/lib/sys/vesa/initvesa.c
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2008-02-13 19:00:12 -0800
committerH. Peter Anvin <hpa@zytor.com>2008-02-13 19:00:12 -0800
commitbc1081b746cc3a224470567990364bf62162b405 (patch)
treec713af8aa792ab2f66a0ef88a56e08a46cde84e1 /com32/lib/sys/vesa/initvesa.c
parent2079650b3e6dbe302fe27e5256fd412894c2f4b9 (diff)
downloadsyslinux-bc1081b746cc3a224470567990364bf62162b405.tar.gz
syslinux-bc1081b746cc3a224470567990364bf62162b405.tar.xz
syslinux-bc1081b746cc3a224470567990364bf62162b405.zip
VESA: move pixel formatting into __vesacon_copy_to_screen()syslinux-3.62-pre5
Make pixel formatting an integral part of __vesacon_copy_to_screen(). In order to cut down on the dispatch overhead, make the formatting functions contain the pixel loop, so we only do indirect dispatch twice per pixel row - once for the formatting and once for copying to the screen.
Diffstat (limited to 'com32/lib/sys/vesa/initvesa.c')
-rw-r--r--com32/lib/sys/vesa/initvesa.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/com32/lib/sys/vesa/initvesa.c b/com32/lib/sys/vesa/initvesa.c
index d5aa9ba7..b5aba989 100644
--- a/com32/lib/sys/vesa/initvesa.c
+++ b/com32/lib/sys/vesa/initvesa.c
@@ -236,6 +236,7 @@ static int vesacon_set_mode(void)
mi = &__vesa_info.mi;
mode = bestmode;
__vesacon_bytes_per_pixel = (mi->bpp+7) >> 3;
+ __vesacon_format_pixels = __vesacon_format_pixels_list[bestpxf];
/* Download the SYSLINUX- or BIOS-provided font */
rm.eax.w[0] = 0x0018; /* Query custom font */