diff options
author | Matt Fleming <matt.fleming@intel.com> | 2012-10-19 17:08:47 +0100 |
---|---|---|
committer | Matt Fleming <matt.fleming@intel.com> | 2012-10-26 16:37:28 +0100 |
commit | 1e095d3e8e81efa9831047816fb0e3a26cb00c36 (patch) | |
tree | 39244bcb228f0a21c1daac67d10d9e7fbb9edd8b /com32/lib/sys | |
parent | bfeffb0fd408848a90d8e2676ac376a20f0908c4 (diff) | |
download | syslinux-1e095d3e8e81efa9831047816fb0e3a26cb00c36.tar.gz syslinux-1e095d3e8e81efa9831047816fb0e3a26cb00c36.tar.xz syslinux-1e095d3e8e81efa9831047816fb0e3a26cb00c36.zip |
screencpy.c: Delete unused variables and cleanup
* Delete unused variable 'winn'
* Delete unused variable 'win_pos'
* Mark parameter __unused
* Delete unused variable 'l'
* Delete unused variable 'omask'
* Delete BIOS code
* Delete unused variable 'win_size'
* Delete set_window_pos unused function
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Diffstat (limited to 'com32/lib/sys')
-rw-r--r-- | com32/lib/sys/vesa/efi/screencpy.c | 87 |
1 files changed, 1 insertions, 86 deletions
diff --git a/com32/lib/sys/vesa/efi/screencpy.c b/com32/lib/sys/vesa/efi/screencpy.c index aa650cc3..2e191c7e 100644 --- a/com32/lib/sys/vesa/efi/screencpy.c +++ b/com32/lib/sys/vesa/efi/screencpy.c @@ -42,85 +42,9 @@ static struct win_info { int win_num; } wi; -#ifndef SYSLINUX_EFI void __vesacon_init_copy_to_screen(void) { struct vesa_mode_info *const mi = &__vesa_info.mi; - int winn; - - if (mi->mode_attr & 0x0080) { - /* Linear frame buffer */ - - wi.win_base = (char *)mi->lfb_ptr; - wi.win_size = 1 << 31; /* 2 GB, i.e. one huge window */ - wi.win_pos = 0; /* Already positioned (only one position...) */ - wi.win_num = -1; /* Not a window */ - } else { - /* Paged frame buffer */ - - /* We have already tested that *one* of these is usable */ - if ((mi->win_attr[0] & 0x05) == 0x05 && mi->win_seg[0]) - winn = 0; - else - winn = 1; - - wi.win_num = winn; - wi.win_base = (char *)(mi->win_seg[winn] << 4); - wi.win_size = mi->win_size << 10; - wi.win_gshift = ilog2(mi->win_grain) + 10; - wi.win_pos = -1; /* Undefined position */ - } -} - -static void set_window_pos(size_t win_pos) -{ - static com32sys_t ireg; - - wi.win_pos = win_pos; - - if (wi.win_num < 0) - return; /* This should never happen... */ - - ireg.eax.w[0] = 0x4F05; - ireg.ebx.b[0] = wi.win_num; - ireg.edx.w[0] = win_pos >> wi.win_gshift; - - __intcall(0x10, &ireg, NULL); -} - -void __vesacon_copy_to_screen(size_t dst, const uint32_t * src, size_t npixels) -{ - size_t win_pos, win_off; - size_t win_size = wi.win_size; - size_t omask = win_size - 1; - char *win_base = wi.win_base; - size_t l; - size_t bytes = npixels * __vesacon_bytes_per_pixel; - char rowbuf[bytes + 4] __aligned(4); - const char *s; - - s = (const char *)__vesacon_format_pixels(rowbuf, src, npixels); - - while (bytes) { - win_off = dst & omask; - win_pos = dst & ~omask; - - if (__unlikely(win_pos != wi.win_pos)) - set_window_pos(win_pos); - - l = min(bytes, win_size - win_off); - memcpy(win_base + win_off, s, l); - - bytes -= l; - s += l; - dst += l; - } -} -#else -void __vesacon_init_copy_to_screen(void) -{ - struct vesa_mode_info *const mi = &__vesa_info.mi; - int winn; if (mi->mode_attr & 0x0080) { /* Linear frame buffer */ @@ -133,18 +57,10 @@ void __vesacon_init_copy_to_screen(void) /* FIXME: PixelBltOnly mode is unsupported */ } -/* FIXME: Nothing to do for EFI */ -static void set_window_pos(size_t win_pos) -{ -} - void __vesacon_copy_to_screen(size_t dst, const uint32_t * src, size_t npixels) { - size_t win_pos, win_off; - size_t win_size = wi.win_size; - size_t omask = win_size - 1; + size_t win_off; char *win_base = wi.win_base; - size_t l; size_t bytes = npixels * __vesacon_bytes_per_pixel; char rowbuf[bytes + 4] __aligned(4); const char *s; @@ -157,4 +73,3 @@ void __vesacon_copy_to_screen(size_t dst, const uint32_t * src, size_t npixels) win_off = dst; memcpy(win_base + win_off, s, bytes); } -#endif /* SYSLINUX_EFI */ |