\r
#include <Library/UefiLib.h>\r
#include <Library/DebugLib.h>\r
+#include <Library/ShellCEntryLib.h>\r
\r
+/**\r
+ UEFI application entry point which has an interface similar to a\r
+ standard C main function.\r
+\r
+ The ShellCEntryLib library instance wrappers the actual UEFI application\r
+ entry point and calls this ShellAppMain function.\r
+\r
+ @param ImageHandle The image handle of the UEFI Application.\r
+ @param SystemTable A pointer to the EFI System Table.\r
+\r
+ @retval 0 The application exited normally.\r
+ @retval Other An error occurred.\r
+\r
+**/\r
INTN \r
EFIAPI \r
ShellAppMain (\r
--- /dev/null
+/** @file
+ Provides application point extension for "C" style main funciton
+
+Copyright (c) 2006 - 2009, Intel Corporation
+All rights reserved. This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+**/
+
+/**
+ UEFI application entry point which has an interface similar to a
+ standard C main function.
+
+ The ShellCEntryLib library instance wrappers the actual UEFI application
+ entry point and calls this ShellAppMain function.
+
+ @param ImageHandle The image handle of the UEFI Application.
+ @param SystemTable A pointer to the EFI System Table.
+
+ @retval 0 The application exited normally.
+ @retval Other An error occurred.
+
+**/
+INTN
+EFIAPI
+ShellAppMain (
+ IN INTN Argc,
+ IN CHAR16 **Argv
+ );
+
#include <Protocol/EfiShellInterface.h>\r
#include <Protocol/EfiShellParameters.h>\r
\r
+#include <Library/ShellCEntryLib.h>\r
#include <Library/DebugLib.h>\r
\r
INTN\r
);\r
\r
/**\r
- UEFI entry point for an application that will in turn call a C \r
- style ShellAppMain function.\r
+ UEFI entry point for an application that will in turn call the\r
+ ShellAppMain function which has parameters similar to a standard C\r
+ main function.\r
\r
- This application must have a function defined as follows:\r
+ An application that uses UefiShellCEntryLib must have a ShellAppMain\r
+ function as prototyped in Include/Library/ShellCEntryLib.h.\r
+\r
+ @param ImageHandle The image handle of the UEFI Application.\r
+ @param SystemTable A pointer to the EFI System Table.\r
+\r
+ @retval EFI_SUCCESS The application exited normally.\r
+ @retval Other An error occurred.\r
\r
- INTN\r
- EFIAPI\r
- ShellAppMain (\r
- IN INTN Argc, \r
- IN CHAR16 **Argv\r
- );\r
**/\r
EFI_STATUS\r
EFIAPI\r