summaryrefslogtreecommitdiff
path: root/com32/menu
diff options
context:
space:
mode:
authorchandramouli narayanan <mouli@linux.intel.com>2012-07-13 10:43:32 -0700
committerchandramouli narayanan <mouli@linux.intel.com>2012-07-13 10:43:32 -0700
commitb21b8a48807b13eb1cefd94b4d7eea740c430801 (patch)
tree5a096a5ad33f5be2e660b79e16b529c5651450be /com32/menu
parent16aba524b339a2b0c5f0514827a8329fd120be03 (diff)
downloadsyslinux-b21b8a48807b13eb1cefd94b4d7eea740c430801.tar.gz
This is the first cut checkin for GOP supporting the menu subsystem.
For the initial cut, all of vesa code is dropped into vesa/efi with code buildable for EFI with a build option. There is VESA only code that is in the efi subdirectory as well that should go away eventually. Other files not dependent on EFI or not relevant to EFI need to be removed as well (e.g. i915resolution.c). The crux of the code is in initvesa.c and screencpy.c. The GOP initialization code sets up a matching graphics mode for the caller's resolution needs. The VESA data structure is populated and mapped to the EFI implementation as much as possible with some EFI extensions. Since there is no way to query EFI for font, raw font data for cp865_8x16 is added. The code should build. Initial issues with testing the code are: GOP mode on qemu-x86_64 does not match 640x480 and secondly querying for the mode info on qemu fails. However, a simple program querying GOP modes on efi64 platform works ok though. Testing the resulting syslinux.efi on an efi64 platform does not seem to print output other than in efi_main() routine . I suspect that it may be due to loading failure or file system initialization. The issue does not show up on qemu. In summary, there are issues on qemu and an efi64 platform that need to be resolved.
Diffstat (limited to 'com32/menu')
-rw-r--r--com32/menu/Makefile6
1 files changed, 6 insertions, 0 deletions
diff --git a/com32/menu/Makefile b/com32/menu/Makefile
index 5a9b3c6a..d1e85ad0 100644
--- a/com32/menu/Makefile
+++ b/com32/menu/Makefile
@@ -34,6 +34,12 @@ menu.elf : menu.o $(COMMONOBJS) $(C_LIBS)
vesamenu.elf : vesamenu.o $(COMMONOBJS) $(C_LIBS)
$(LD) $(LDFLAGS) -o $@ $^
+vesamenu.c32: vesamenu.o $(COMMONOBJS) $(C_LIBS)
+ $(LD) $(LDFLAGS) -o $@ $^
+
+menu.c32: menu.o $(COMMONOBJS) $(C_LIBS)
+ $(LD) $(LDFLAGS) -o $@ $^
+
tidy dist:
rm -f *.o *.lo *.a *.lst *.elf .*.d *.tmp