]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Application/HelloWorld/HelloWorld.c
MdeModulePkg: Add sample help information for HelloWorld application.
[mirror_edk2.git] / MdeModulePkg / Application / HelloWorld / HelloWorld.c
index b1d16f76a0b0b9a2de7ec7987c042c5b47606419..164571bfb0ce43ce393d7f37939a7bad7bff7f44 100644 (file)
@@ -1,8 +1,9 @@
 /** @file\r
-  This simple application just print a "UEFI Hello World!" to the UEFI Console.\r
-  \r
-  Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
-  All rights reserved. This program and the accompanying materials                          \r
+  This sample application bases on HelloWorld PCD setting \r
+  to print "UEFI Hello World!" to the UEFI Console.\r
+\r
+  Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>\r
+  This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
   http://opensource.org/licenses/bsd-license.php                                            \r
 \r
 #include <Uefi.h>\r
 #include <Library/PcdLib.h>\r
-#include <Library/DebugLib.h>\r
 #include <Library/UefiLib.h>\r
 #include <Library/UefiApplicationEntryPoint.h>\r
-#include <Library/UefiBootServicesTableLib.h>\r
 \r
+//\r
+// String token ID of help message text.\r
+// Shell supports to find help message in the resource section of an application image if\r
+// .MAN file is not found. This global variable is added to make build tool recognizes\r
+// that the help string is consumed by user and then build tool will add the string into\r
+// the resource section. Thus the application can use '-?' option to show help message in\r
+// Shell.\r
+//\r
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID mStringHelpTokenId = STRING_TOKEN (STR_HELLO_WORLD_HELP_INFORMATION);\r
 \r
 /**\r
   The user Entry Point for Application. The user code starts with this function\r
-  as the real entry point for the image goes into a library that calls this \r
-  function.\r
+  as the real entry point for the application.\r
 \r
   @param[in] ImageHandle    The firmware allocated handle for the EFI image.  \r
   @param[in] SystemTable    A pointer to the EFI System Table.\r
@@ -48,6 +55,9 @@ UefiMain (
   //\r
   if (FeaturePcdGet (PcdHelloWorldPrintEnable)) {\r
        for (Index = 0; Index < PcdGet32 (PcdHelloWorldPrintTimes); Index ++) {\r
+         //\r
+         // Use UefiLib Print API to print string to UEFI console\r
+         //\r
        Print ((CHAR16*)PcdGetPtr (PcdHelloWorldPrintString));\r
     }\r
   }\r