From 2bba8d5af44bd3846df43088ef88e40ac0f07fce Mon Sep 17 00:00:00 2001 From: Olivier Martin Date: Mon, 23 Sep 2013 09:20:03 +0000 Subject: EdkShellPkg: Add Aarch64 support * Update the EFI Shell patch to use SVN rev 64 (was rev 61) * Modify build system to enable compilation targeting Aarch64 platform. * Modify patch to apply on EdkShell sources to add support for Aarch64. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14699 6f19259b-4bc3-4df7-8a09-765794883524 --- EdkShellPkg/ShellR64.patch | 8757 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 8757 insertions(+) create mode 100644 EdkShellPkg/ShellR64.patch (limited to 'EdkShellPkg/ShellR64.patch') diff --git a/EdkShellPkg/ShellR64.patch b/EdkShellPkg/ShellR64.patch new file mode 100644 index 0000000000..066444ae4c --- /dev/null +++ b/EdkShellPkg/ShellR64.patch @@ -0,0 +1,8757 @@ +Index: EfiCompress/Compress.h +=================================================================== +--- EfiCompress/Compress.h (revision 64) ++++ EfiCompress/Compress.h (working copy) +@@ -57,4 +57,4 @@ + + --*/ + +-#endif +\ No newline at end of file ++#endif +Index: EfiCompress/CompressMain.c +=================================================================== +--- EfiCompress/CompressMain.c (revision 64) ++++ EfiCompress/CompressMain.c (working copy) +@@ -50,7 +50,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE)0 + } + }; + +Index: EfiCompress/compress.inf +=================================================================== +--- EfiCompress/compress.inf (revision 64) ++++ EfiCompress/compress.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +-..\ShCommonStrings.uni ++../ShCommonStrings.uni + CompressStrings.uni + compressMain.c + compress.c +@@ -34,17 +34,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: EfiCompress/compress.c +=================================================================== +--- EfiCompress/compress.c (revision 64) ++++ EfiCompress/compress.c (working copy) +@@ -262,7 +262,7 @@ + STATIC UINT32 mCompSize, mOrigSize; + + STATIC UINT16 *mFreq, *mSortPtr, mLenCnt[17], mLeft[2 * NC - 1], mRight[2 * NC - 1], +- mCrcTable[UINT8_MAX + 1], mCFreq[2 * NC - 1], mCTable[4096], mCCode[NC], ++ mCrcTable[UINT8_MAX + 1], mCFreq[2 * NC - 1], mCCode[NC], + mPFreq[2 * NP - 1], mPTCode[NPT], mTFreq[2 * NT - 1]; + + STATIC NODE mPos, mMatchPos, mAvail, *mPosition, *mParent, *mPrev, *mNext = NULL; +Index: load/load.c +=================================================================== +--- load/load.c (revision 64) ++++ load/load.c (working copy) +@@ -60,7 +60,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: load/load.h +=================================================================== +--- load/load.h (revision 64) ++++ load/load.h (working copy) +@@ -33,3 +33,4 @@ + } + + #endif ++ +Index: load/load.inf +=================================================================== +--- load/load.inf (revision 64) ++++ load/load.inf (working copy) +@@ -39,23 +39,23 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + LoadStrings.uni + load.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: drvdiag/drvdiag.c +=================================================================== +--- drvdiag/drvdiag.c (revision 64) ++++ drvdiag/drvdiag.c (working copy) +@@ -41,7 +41,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiDrvdiagGuid = EFI_DRVDIAG_GUID; + SHELL_VAR_CHECK_ITEM DrvdiagCheckList[] = { + { +@@ -90,7 +90,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: drvdiag/drvdiag.h +=================================================================== +--- drvdiag/drvdiag.h (revision 64) ++++ drvdiag/drvdiag.h (working copy) +@@ -33,3 +33,4 @@ + } + + #endif ++ +Index: drvdiag/drvdiag.inf +=================================================================== +--- drvdiag/drvdiag.inf (revision 64) ++++ drvdiag/drvdiag.inf (working copy) +@@ -40,7 +40,7 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + DrvdiagStrings.uni + drvdiag.c + drvdiag.h +@@ -48,17 +48,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: cls/cls.c +=================================================================== +--- cls/cls.c (revision 64) ++++ cls/cls.c (working copy) +@@ -30,7 +30,7 @@ + // + #include STRING_DEFINES_FILE + +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiClsGuid = EFI_CLS_GUID; + SHELL_VAR_CHECK_ITEM ClsCheckList[] = { + { +@@ -49,7 +49,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: cls/cls.h +=================================================================== +--- cls/cls.h (revision 64) ++++ cls/cls.h (working copy) +@@ -36,3 +36,4 @@ + } + + #endif ++ +Index: cls/cls.inf +=================================================================== +--- cls/cls.inf (revision 64) ++++ cls/cls.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + ClsStrings.uni + Cls.c + Cls.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: newshell/nshell.inf +=================================================================== +--- newshell/nshell.inf (revision 64) ++++ newshell/nshell.inf (working copy) +@@ -26,24 +26,24 @@ + + [sources.common] + NshellStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + init.c + nshell.h + fakehii.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: newshell/FakeHii.c +=================================================================== +--- newshell/FakeHii.c (revision 64) ++++ newshell/FakeHii.c (working copy) +@@ -196,7 +196,7 @@ + Status = BS->HandleProtocol ( + mFakeHiiHandle, + &gEfiHiiProtocolGuid, +- &FakeHii ++ (VOID**)&FakeHii + ); + Status = BS->UninstallProtocolInterface ( + mFakeHiiHandle, +@@ -320,7 +320,7 @@ + if (Language == NULL) { + return EFI_OUT_OF_RESOURCES; + } +- strcpya (Language, (UINT8 *) PackageHdr + HeaderSize - LanguageSize); ++ strcpya (Language, (CHAR8*) ((UINT8 *) PackageHdr + HeaderSize - LanguageSize)); + for (Link = PackageList->StringPkgHdr.Flink; Link != &PackageList->StringPkgHdr; Link = Link->Flink) { + StringPackage = CR (Link, FAKE_HII_STRING_PACKAGE, Entry, FAKE_HII_STRING_PACKAGE_SIGNATURE); + if (CompareLanguage (Language, StringPackage->StringPkgHdr->Language)) { +@@ -770,7 +770,7 @@ + StringPackage = NULL; + for (Link = DatabaseRecord->StringPkgHdr.Flink; Link != &DatabaseRecord->StringPkgHdr; Link = Link->Flink) { + StringPackage = CR (Link, FAKE_HII_STRING_PACKAGE, Entry, FAKE_HII_STRING_PACKAGE_SIGNATURE); +- if (CompareLanguage (StringPackage->StringPkgHdr->Language, (UINT8 *) Language)) { ++ if (CompareLanguage (StringPackage->StringPkgHdr->Language, (CHAR8 *) Language)) { + Matched = TRUE; + break; + } +Index: newshell/init.c +=================================================================== +--- newshell/init.c (revision 64) ++++ newshell/init.c (working copy) +@@ -23,7 +23,7 @@ + #include "nshell.h" + + extern UINT8 STRING_ARRAY_NAME[]; +-extern BOOLEAN gHiiInitialized = FALSE; ++BOOLEAN gHiiInitialized = FALSE; + + // + // This is the generated header file which includes whatever needs to be exported (strings + IFR) +@@ -99,13 +99,13 @@ + Status = BS->HandleProtocol ( + ImgHnd, + &gEfiLoadedImageProtocolGuid, +- &img ++ (VOID**)&img + ); + if (!EFI_ERROR (Status)) { + Status = BS->HandleProtocol ( + img->DeviceHandle, + &gEfiDevicePathProtocolGuid, +- &dp ++ (VOID**)&dp + ); + if (!EFI_ERROR (Status)) { + *DevPath = DuplicateDevicePath (dp); +@@ -220,7 +220,7 @@ + // + Status = LibLocateProtocol ( + &gEfiConsoleControlProtocolGuid, +- &ConsoleControl ++ (VOID**)&ConsoleControl + ); + if (!EFI_ERROR (Status)) { + Status = ConsoleControl->GetMode (ConsoleControl, &mOldCurrentMode, NULL, NULL); +@@ -342,7 +342,7 @@ + Status = _ShellLoadEnvDriver (ImageHandle); + ) + if (EFI_ERROR (Status)) { +- Status = LibLocateProtocol (&ShellEnvProtocol, &SE); ++ Status = LibLocateProtocol (&ShellEnvProtocol, (VOID**)&SE); + if (EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_NSHELL_ENV_DRIVER), HiiNewshellHandle); + return Status; +@@ -372,7 +372,7 @@ + *IsRootInstance = TRUE; + } + +- Status = LibLocateProtocol (&ShellEnvProtocol, &SE); ++ Status = LibLocateProtocol (&ShellEnvProtocol, (VOID**)&SE); + ASSERT (!EFI_ERROR (Status)); + SI = SE->NewShell (ImageHandle); + +@@ -543,7 +543,7 @@ + // + ConsoleControlStatus = LibLocateProtocol ( + &gEfiConsoleControlProtocolGuid, +- &ConsoleControl ++ (VOID**)&ConsoleControl + ); + if (!EFI_ERROR (ConsoleControlStatus)) { + ConsoleControlStatus = ConsoleControl->GetMode (ConsoleControl, &CurrentMode, NULL, NULL); +@@ -709,7 +709,7 @@ + // + SE2->IncrementShellNestingLevel (); + +- while (Status != -1) { ++ while (Status != (EFI_STATUS) -1) { + Status = NShellPrompt (ImageHandle); + EFI_NT_EMULATOR_CODE ( + // +@@ -723,7 +723,7 @@ + Status = BS->HandleProtocol ( + ImageHandle, + &ShellInterfaceProtocol, +- &SI ++ (VOID**)&SI + ); + ASSERT (!EFI_ERROR (Status)); + } +Index: newshell/FakeHii.h +=================================================================== +--- newshell/FakeHii.h (revision 64) ++++ newshell/FakeHii.h (working copy) +@@ -479,3 +479,4 @@ + #endif + + #endif ++ +Index: newshell/nshell.h +=================================================================== +--- newshell/nshell.h (revision 64) ++++ newshell/nshell.h (working copy) +@@ -58,4 +58,5 @@ + #define EFI_NO_MONOSHELL_CODE(code) code + #endif + +-#endif +\ No newline at end of file ++#endif ++ +Index: type/type.c +=================================================================== +--- type/type.c (revision 64) ++++ type/type.c (working copy) +@@ -59,7 +59,7 @@ + BOOLEAN TypeUnicode; + BOOLEAN TypeAuto; + +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiTypeGuid = EFI_TYPE_GUID; + SHELL_VAR_CHECK_ITEM TypeCheckList[] = { + { +@@ -90,7 +90,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: type/type.h +=================================================================== +--- type/type.h (revision 64) ++++ type/type.h (working copy) +@@ -30,3 +30,4 @@ + } + + #endif ++ +Index: type/type.inf +=================================================================== +--- type/type.inf (revision 64) ++++ type/type.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + TypeStrings.uni + type.c + type.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: dmem/MemCommonPart.c +=================================================================== +--- dmem/MemCommonPart.c (revision 64) ++++ dmem/MemCommonPart.c (working copy) +@@ -58,7 +58,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -148,7 +148,7 @@ + return EFI_SUCCESS; + } + +- Address = (AddressStr) ? Xtoi (AddressStr) : (UINT64) SystemTable; ++ Address = (AddressStr) ? Xtoi (AddressStr) : (UINT64)(UINTN) SystemTable; + Size = (SizeStr) ? Xtoi (SizeStr) : 512; + + // +@@ -156,7 +156,7 @@ + // + PrintToken (STRING_TOKEN (STR_DMEM_MEMORY_ADDR), HiiDmemHandle, 2 * sizeof (UINTN), Address, Size); + if (MMIo) { +- Status = BS->LocateProtocol (&gEfiPciRootBridgeIoProtocolGuid, NULL, &PciRootBridgeIo); ++ Status = BS->LocateProtocol (&gEfiPciRootBridgeIoProtocolGuid, NULL, (VOID**)&PciRootBridgeIo); + if (EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_LOC_PROT_ERR_EX), HiiDmemHandle, L"dmem", L"PciRootBridgeIo"); + return Status; +@@ -171,7 +171,7 @@ + return Status; + } + +- PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciIoWidthUint8, Address, Size, Buffer); ++ PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciWidthUint8, Address, Size, Buffer); + } else { + Buffer = (UINT8 *) (UINTN) Address; + } +@@ -233,7 +233,7 @@ + // + MMIo = FALSE; + AddressStr = SizeStr = NULL; +- Address = (UINT64) SystemTable; ++ Address = (UINT64)(UINTN) SystemTable; + Size = 512; + RetCode = LibCheckVariables (SI, DmemCheckList, &ChkPck, &Useful); + if (VarCheckOk != RetCode) { +@@ -316,7 +316,7 @@ + // + PrintToken (STRING_TOKEN (STR_DMEM_NEW_MEMORY_ADDR), HiiDmemHandle, 2 * sizeof (UINTN), Address, Size); + if (MMIo) { +- Status = BS->LocateProtocol (&gEfiPciRootBridgeIoProtocolGuid, NULL, &PciRootBridgeIo); ++ Status = BS->LocateProtocol (&gEfiPciRootBridgeIoProtocolGuid, NULL, (VOID**)&PciRootBridgeIo); + if (EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_LOC_PROT_ERR_EX), HiiDmemHandle, L"dmem", L"PciRootBridgeIo"); + return Status; +@@ -331,7 +331,7 @@ + return Status; + } + +- PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciIoWidthUint8, Address, Size, Buffer); ++ PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciWidthUint8, Address, Size, Buffer); + } else { + Buffer = (UINT8 *) (UINTN) Address; + } +Index: dmem/MemCommonPart.h +=================================================================== +--- dmem/MemCommonPart.h (revision 64) ++++ dmem/MemCommonPart.h (working copy) +@@ -61,4 +61,4 @@ + IN EFI_BLOCK_IO_PROTOCOL *BlkIo + ); + +-#endif +\ No newline at end of file ++#endif +Index: dmem/efidump.c +=================================================================== +--- dmem/efidump.c (revision 64) ++++ dmem/efidump.c (working copy) +@@ -24,7 +24,7 @@ + --*/ + + #include "debug.h" +-#include "Efipart.h" ++#include "EfiPart.h" + #include "EfiShellLib.h" + + #include STRING_DEFINES_FILE +@@ -320,13 +320,11 @@ + VOID *AcpiTable; + VOID *Acpi20Table; + VOID *SMBIOSTable; +- VOID *SalSystemTable; + VOID *MpsTable; + + AcpiTable = NULL; + Acpi20Table = NULL; + SMBIOSTable = NULL; +- SalSystemTable = NULL; + MpsTable = NULL; + + PrintToken ( +@@ -352,11 +350,13 @@ + PrintToken (STRING_TOKEN (STR_DEBUG_STD_ERROR_ON), HiiDmemHandle, LibDevicePathToStr (DevicePath)); + } + +- PrintToken (STRING_TOKEN (STR_DEBUG_RUNTIME_SERVICES), HiiDmemHandle, (UINT64) Tbl.Sys->RuntimeServices); +- PrintToken (STRING_TOKEN (STR_DEBUG_BOOT_SERVICES), HiiDmemHandle, (UINT64) Tbl.Sys->BootServices); ++ PrintToken (STRING_TOKEN (STR_DEBUG_RUNTIME_SERVICES), HiiDmemHandle, (UINT64)(UINTN) Tbl.Sys->RuntimeServices); ++ PrintToken (STRING_TOKEN (STR_DEBUG_BOOT_SERVICES), HiiDmemHandle, (UINT64)(UINTN) Tbl.Sys->BootServices); + + EFI64_CODE ( +- Status = LibGetSystemConfigurationTable(&gEfiSalSystemTableGuid, &SalSystemTable); ++ VOID *SalSystemTable; ++ ++ Status = LibGetSystemConfigurationTable(&gEfiSalSystemTableGuid, &SalSystemTable); + if (!EFI_ERROR(Status)) { + PrintToken (STRING_TOKEN(STR_DEBUG_SAL_SYSTEM_TABLE), HiiDmemHandle, (UINT64)SalSystemTable); + } +@@ -364,22 +364,22 @@ + + Status = LibGetSystemConfigurationTable (&gEfiAcpiTableGuid, &AcpiTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_ACPI_TABLE), HiiDmemHandle, (UINT64) AcpiTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_ACPI_TABLE), HiiDmemHandle, (UINT64)(UINTN) AcpiTable); + } + + Status = LibGetSystemConfigurationTable (&gEfiAcpi20TableGuid, &Acpi20Table); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_APCI_2_TABLE), HiiDmemHandle, (UINT64) Acpi20Table); ++ PrintToken (STRING_TOKEN (STR_DEBUG_APCI_2_TABLE), HiiDmemHandle, (UINT64)(UINTN) Acpi20Table); + } + + Status = LibGetSystemConfigurationTable (&gEfiMpsTableGuid, &MpsTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_MPS_TABLE), HiiDmemHandle, (UINT64) MpsTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_MPS_TABLE), HiiDmemHandle, (UINT64)(UINTN) MpsTable); + } + + Status = LibGetSystemConfigurationTable (&gEfiSmbiosTableGuid, &SMBIOSTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_SMBIOS_TABLE), HiiDmemHandle, (UINT64) SMBIOSTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_SMBIOS_TABLE), HiiDmemHandle, (UINT64)(UINTN) SMBIOSTable); + } + } + +Index: dmem/debug.h +=================================================================== +--- dmem/debug.h (revision 64) ++++ dmem/debug.h (working copy) +@@ -156,3 +156,4 @@ + extern EFI_HII_HANDLE HiiDmemHandle; + + #endif ++ +Index: dmem/dmem.inf +=================================================================== +--- dmem/dmem.inf (revision 64) ++++ dmem/dmem.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + MemStrings.uni + DebugStrings.uni + mem.c +@@ -34,17 +34,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: devices/devices.c +=================================================================== +--- devices/devices.c (revision 64) ++++ devices/devices.c (working copy) +@@ -36,7 +36,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiDevicesGuid = EFI_DEVICES_GUID; + SHELL_VAR_CHECK_ITEM DevicesCheckList[] = { + { +@@ -61,7 +61,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: devices/devices.h +=================================================================== +--- devices/devices.h (revision 64) ++++ devices/devices.h (working copy) +@@ -32,3 +32,4 @@ + 0x6fabed98, 0x2a7, 0x46a4, 0x84, 0xd1, 0x76, 0xcd, 0x5c, 0x49, 0x78, 0x74 \ + } + #endif ++ +Index: devices/devices.inf +=================================================================== +--- devices/devices.inf (revision 64) ++++ devices/devices.inf (working copy) +@@ -41,23 +41,23 @@ + + [sources.common] + DevicesStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + devices.c + devices.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mv/mv.c +=================================================================== +--- mv/mv.c (revision 64) ++++ mv/mv.c (working copy) +@@ -36,7 +36,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiMvGuid = EFI_MV_GUID; + SHELL_VAR_CHECK_ITEM MvCheckList[] = { + { +@@ -55,7 +55,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: mv/mv.h +=================================================================== +--- mv/mv.h (revision 64) ++++ mv/mv.h (working copy) +@@ -33,4 +33,4 @@ + + #define EFI_FILE_STRING_SIZE 260 + +-#endif +\ No newline at end of file ++#endif +Index: mv/mv.inf +=================================================================== +--- mv/mv.inf (revision 64) ++++ mv/mv.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + MvStrings.uni + mv.c + mv.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: unload/unload.c +=================================================================== +--- unload/unload.c (revision 64) ++++ unload/unload.c (working copy) +@@ -66,7 +66,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -110,7 +110,7 @@ + *DriverName = LibDevicePathToStr (Image->FilePath); + } + } else { +- LibGetDriverName(DriverBindingHandle, Language, DriverName); ++ LibGetDriverName(DriverBindingHandle, (CHAR8*)Language, DriverName); + } + + return EFI_SUCCESS; +@@ -184,7 +184,7 @@ + + DevicePath = NULL; + BestDeviceName = NULL; +- Status = BS->HandleProtocol (Handle, &gEfiDevicePathProtocolGuid, &DevicePath); ++ Status = BS->HandleProtocol (Handle, &gEfiDevicePathProtocolGuid, (VOID**)&DevicePath); + + Print (L"\n"); + PrintToken (STRING_TOKEN (STR_UNLOAD_CONTROLLER_NAME), HiiUnloadHandle); +@@ -242,14 +242,14 @@ + Image = FALSE; + Status = _UnloadGetDriverName ( + DriverBindingHandleBuffer[Index], +- Language, ++ (UINT8*)Language, + FALSE, + &DriverName + ); + if (DriverName == NULL) { + Status = _UnloadGetDriverName ( + DriverBindingHandleBuffer[Index], +- Language, ++ (UINT8*)Language, + TRUE, + &DriverName + ); +@@ -436,7 +436,7 @@ + + Status = _UnloadGetDriverName ( + Handle, +- Language, ++ (UINT8*)Language, + FALSE, + &DriverName + ); +@@ -450,7 +450,7 @@ + + Status = _UnloadGetDriverName ( + Handle, +- Language, ++ (UINT8*)Language, + TRUE, + &DriverName + ); +@@ -628,7 +628,7 @@ + + if (Prot->Handles[Index] == Handle) { + Dump = Verbose ? Prot->DumpInfo : Prot->DumpToken; +- Status = BS->HandleProtocol (Handle, &Prot->ProtocolId, &Interface); ++ Status = BS->HandleProtocol (Handle, &Prot->ProtocolId, (VOID**)&Interface); + if (!EFI_ERROR (Status)) { + if (Verbose) { + for (Index1 = 0; Index1 < ProtocolBufferCount; Index1++) { +@@ -676,7 +676,7 @@ + goto Done; + } + +- Status = BS->HandleProtocol (Handle, ProtocolBuffer[Index1], &Interface); ++ Status = BS->HandleProtocol (Handle, ProtocolBuffer[Index1], (VOID**)&Interface); + if (!EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_UNLOAD_TWO_VARS_HG_NEW), HiiUnloadHandle, ProtocolBuffer[Index1], Interface); + } +Index: unload/unload.h +=================================================================== +--- unload/unload.h (revision 64) ++++ unload/unload.h (working copy) +@@ -36,3 +36,4 @@ + } + + #endif ++ +Index: unload/unload.inf +=================================================================== +--- unload/unload.inf (revision 64) ++++ unload/unload.inf (working copy) +@@ -39,23 +39,23 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + UnloadStrings.uni + unload.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mode/mode.inf +=================================================================== +--- mode/mode.inf (revision 64) ++++ mode/mode.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + ModeStrings.uni + mode.c + mode.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mode/mode.c +=================================================================== +--- mode/mode.c (revision 64) ++++ mode/mode.c (working copy) +@@ -53,7 +53,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: mode/mode.h +=================================================================== +--- mode/mode.h (revision 64) ++++ mode/mode.h (working copy) +@@ -30,3 +30,4 @@ + } + + #endif ++ +Index: attrib/attrib.inf +=================================================================== +--- attrib/attrib.inf (revision 64) ++++ attrib/attrib.inf (working copy) +@@ -41,24 +41,24 @@ + + [sources.common] + AttribStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + attrib.c + attrib.h + + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: attrib/attrib.c +=================================================================== +--- attrib/attrib.c (revision 64) ++++ attrib/attrib.c (working copy) +@@ -57,7 +57,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiAttribGuid = EFI_ATTRIB_GUID; + SHELL_VAR_CHECK_ITEM AttribCheckList[] = { + { +@@ -124,7 +124,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -438,7 +438,7 @@ + // + Info = Arg->Info; + if (Add || Remove) { +- Info->Attribute = Info->Attribute & (~Remove) | Add; ++ Info->Attribute = (Info->Attribute & (~Remove)) | Add; + Status = Arg->Handle->SetInfo ( + Arg->Handle, + &gEfiFileInfoGuid, +Index: attrib/attrib.h +=================================================================== +--- attrib/attrib.h (revision 64) ++++ attrib/attrib.h (working copy) +@@ -29,4 +29,5 @@ + 0xcd691c77, 0xfc45, 0x4d7b, 0xb8, 0x92, 0x92, 0xa, 0x86, 0x2d, 0x67, 0xdc \ + } + +-#endif +\ No newline at end of file ++#endif ++ +Index: err/err.inf +=================================================================== +--- err/err.inf (revision 64) ++++ err/err.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +-..\ShCommonStrings.uni ++../ShCommonStrings.uni + ErrStrings.uni + err.c + err.h +@@ -33,17 +33,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: err/DebugMask.h +=================================================================== +--- err/DebugMask.h (revision 64) ++++ err/DebugMask.h (working copy) +@@ -67,3 +67,4 @@ + extern EFI_GUID gEfiDebugMaskProtocolGuid; + + #endif ++ +Index: err/err.c +=================================================================== +--- err/err.c (revision 64) ++++ err/err.c (working copy) +@@ -35,7 +35,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiErrGuid = EFI_ERR_GUID; + SHELL_VAR_CHECK_ITEM ErrCheckList[] = { + { +@@ -60,7 +60,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -149,7 +149,7 @@ + EFI_DEBUG_MASK_PROTOCOL *dmp; + UINTN Mask; + +- Status = BS->HandleProtocol (Handle, &gEfiDebugMaskProtocolGuid, &dmp); ++ Status = BS->HandleProtocol (Handle, &gEfiDebugMaskProtocolGuid, (VOID**)&dmp); + if (!EFI_ERROR (Status)) { + Status = dmp->GetDebugMask (dmp, &Mask); + if (!EFI_ERROR (Status)) { +@@ -170,13 +170,11 @@ + UINTN HandleNum; + UINTN Index; + UINTN DrvHandle; +- BOOLEAN Found; + + HandleBuf = NULL; + HandleNum = 0; + DrvHandle = 0; + Status = EFI_SUCCESS; +- Found = FALSE; + + if (NULL != Handle) { + DrvHandle = (UINTN) StrToUIntegerBase (Handle, 16, &Status) - 1; +@@ -278,7 +276,7 @@ + goto Done; + } + +- Status = BS->HandleProtocol (RealHandle, &gEfiDebugMaskProtocolGuid, &dmp); ++ Status = BS->HandleProtocol (RealHandle, &gEfiDebugMaskProtocolGuid, (VOID**)&dmp); + if (EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_ERR_HANDLE_NOT_FOUND), HiiHandle, DrvHandle + 1); + goto Done; +@@ -336,7 +334,7 @@ + } + + for (Index = 0; Index < BufferSize / sizeof(EFI_HANDLE); Index ++) { +- Status = BS->HandleProtocol (Buffer[Index], &gEfiDebugMaskProtocolGuid, &dmp); ++ Status = BS->HandleProtocol (Buffer[Index], &gEfiDebugMaskProtocolGuid, (VOID**)&dmp); + Status = dmp->SetDebugMask (dmp, Msk); + } + +Index: err/err.h +=================================================================== +--- err/err.h (revision 64) ++++ err/err.h (working copy) +@@ -29,4 +29,4 @@ + 0xdaab229b, 0x7883, 0x4f5f, 0xac, 0x6e, 0x15, 0x20, 0xc7, 0xe7, 0x8f, 0xd4 \ + } + +-#endif +\ No newline at end of file ++#endif +Index: EfiDecompress/Decompress.inf +=================================================================== +--- EfiDecompress/Decompress.inf (revision 64) ++++ EfiDecompress/Decompress.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +-..\ShCommonStrings.uni ++../ShCommonStrings.uni + DecompressStrings.uni + decompress.c + decompress.h +@@ -33,17 +33,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: EfiDecompress/Decompress.c +=================================================================== +--- EfiDecompress/Decompress.c (revision 64) ++++ EfiDecompress/Decompress.c (working copy) +@@ -22,7 +22,7 @@ + --*/ + + #include "EfiShellLib.h" +-#include "decompress.h" ++#include "Decompress.h" + + extern UINT8 STRING_ARRAY_NAME[]; + +@@ -31,7 +31,7 @@ + // + #include STRING_DEFINES_FILE + +-#include EFI_PROTOCOL_DEFINITION (decompress) ++#include EFI_PROTOCOL_DEFINITION (Decompress) + + EFI_HII_HANDLE HiiDecompressHandle; + EFI_GUID EfiDecompressGuid = EFI_DECOMPRESS_GUID; +@@ -52,7 +52,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -192,7 +192,7 @@ + // + // + // +- Status = LibLocateProtocol (&gEfiDecompressProtocolGuid, &Decompress); ++ Status = LibLocateProtocol (&gEfiDecompressProtocolGuid, (VOID**)&Decompress); + if (EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_DECOMPRESS_PROTOCOL_NOT_FOUND), HiiDecompressHandle, L"efidecompress"); + Status = EFI_UNSUPPORTED; +Index: EfiDecompress/Decompress.h +=================================================================== +--- EfiDecompress/Decompress.h (revision 64) ++++ EfiDecompress/Decompress.h (working copy) +@@ -29,4 +29,4 @@ + 0xe15963a9, 0xa05a, 0x480e, 0x91, 0x49, 0x32, 0xe9, 0x24, 0x5d, 0x98, 0xcb \ + } + +-#endif +\ No newline at end of file ++#endif +Index: hexedit/libStatusBar.c +=================================================================== +--- hexedit/libStatusBar.c (revision 64) ++++ hexedit/libStatusBar.c (working copy) +@@ -173,6 +173,7 @@ + // back up the screen attributes + // + Orig = HMainEditor.ColorAttributes; ++ New.Data = 0; + New.Colors.Foreground = Orig.Colors.Background; + New.Colors.Background = Orig.Colors.Foreground; + +Index: hexedit/libtitlebar.h +=================================================================== +--- hexedit/libtitlebar.h (revision 64) ++++ hexedit/libtitlebar.h (working copy) +@@ -46,3 +46,4 @@ + ); + + #endif ++ +Index: hexedit/heditor.h +=================================================================== +--- hexedit/heditor.h (revision 64) ++++ hexedit/heditor.h (working copy) +@@ -39,7 +39,7 @@ + #include "libinputbar.h" + #include "libmenubar.h" + +-#include "libmisc.h" ++#include "libMisc.h" + + #include "libclipboard.h" + +@@ -52,9 +52,10 @@ + extern BOOLEAN HEditorFirst; + extern BOOLEAN HEditorExit; + +-extern EFI_HII_HANDLE HiiHandle; ++extern EFI_HII_HANDLE gHexEditHiiHandle; + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) + extern EFI_HII_PROTOCOL *Hii; + #endif + + #endif // _HEDITOR_H ++ +Index: hexedit/libBufferImage.c +=================================================================== +--- hexedit/libBufferImage.c (revision 64) ++++ hexedit/libBufferImage.c (working copy) +@@ -203,6 +203,9 @@ + case MEM_BUFFER: + HMemImageBackup (); + break; ++ ++ case NO_BUFFER: ++ break; + } + + return EFI_SUCCESS; +@@ -587,7 +590,7 @@ + UINT8 Value; + BOOLEAN HighBits; + +- Line = NULL; ++ Line = NULL; + if (HMainEditor.MouseSupported) { + + if (HBufferImageMouseNeedRefresh) { +@@ -610,6 +613,7 @@ + // backup the old screen attributes + // + Orig = HMainEditor.ColorAttributes; ++ New.Data = 0; + New.Colors.Foreground = Orig.Colors.Background; + New.Colors.Background = Orig.Colors.Foreground; + +@@ -801,10 +805,10 @@ + UINTN StartRow; + UINTN EndRow; + UINTN FStartRow; +- UINTN FEndRow; + UINTN Tmp; + + Orig = HMainEditor.ColorAttributes; ++ New.Data = 0; + New.Colors.Foreground = Orig.Colors.Background; + New.Colors.Background = Orig.Colors.Foreground; + +@@ -870,7 +874,6 @@ + } + + FStartRow = StartRow; +- FEndRow = EndRow; + + StartRow = TEXT_START_ROW + StartRow - HBufferImage.LowVisibleRow; + EndRow = TEXT_START_ROW + EndRow - HBufferImage.LowVisibleRow; +@@ -980,6 +983,10 @@ + case MEM_BUFFER: + Status = HMemImageRead (MemOffset, MemSize, Recover); + break; ++ ++ case NO_BUFFER: ++ Status = EFI_UNSUPPORTED; ++ break; + } + + if (EFI_ERROR (Status)) { +@@ -1030,6 +1037,10 @@ + case MEM_BUFFER: + Status = HMemImageSave (MemOffset, MemSize); + break; ++ ++ case NO_BUFFER: ++ Status = EFI_UNSUPPORTED; ++ break; + } + + if (EFI_ERROR (Status)) { +@@ -1967,14 +1978,11 @@ + + --*/ + { +- HEFI_EDITOR_LINE *Line; + UINTN FRow; + UINTN FCol; + UINTN Gap; + INTN Retreat; + +- Line = HBufferImage.CurrentLine; +- + FRow = HBufferImage.BufferPosition.Row; + FCol = HBufferImage.BufferPosition.Column; + +@@ -1996,7 +2004,7 @@ + // + // get correct line + // +- Line = HMoveLine (Retreat); ++ HMoveLine (Retreat); + + FRow -= Gap; + +@@ -2025,13 +2033,10 @@ + + --*/ + { +- HEFI_EDITOR_LINE *Line; + UINTN FRow; + UINTN FCol; + BOOLEAN HighBits; + +- Line = HBufferImage.CurrentLine; +- + // + // curosr will at the high bit + // +@@ -2157,7 +2162,6 @@ + + HEFI_EDITOR_LINE *Line; + EFI_LIST_ENTRY *Link; +- UINTN StartRow; + + UINTN OldFCol; + UINTN OldFRow; +@@ -2167,11 +2171,6 @@ + + EFI_STATUS Status; + +- // +- // get the line that start position is at +- // +- StartRow = Pos / 0x10; +- + Size = HBufferImageGetTotalSize (); + + if (Size < Count) { +@@ -2300,7 +2299,6 @@ + HEFI_EDITOR_LINE *Line; + + EFI_LIST_ENTRY *Link; +- UINTN StartRow; + + UINTN OldFCol; + UINTN OldFRow; +@@ -2308,11 +2306,6 @@ + + UINTN NewPos; + +- // +- // get the line that start position is at +- // +- StartRow = Pos / 0x10; +- + Size = HBufferImageGetTotalSize (); + + // +Index: hexedit/libstatusbar.h +=================================================================== +--- hexedit/libstatusbar.h (revision 64) ++++ hexedit/libstatusbar.h (working copy) +@@ -55,3 +55,4 @@ + ); + + #endif ++ +Index: hexedit/heditortype.h +=================================================================== +--- hexedit/heditortype.h (revision 64) ++++ hexedit/heditortype.h (working copy) +@@ -30,7 +30,7 @@ + #define EDITOR_NAME L"EFI Hex Editor\0" + #define EDITOR_VERSION L"0.99\0" + +-#define EFI_EDITOR_LINE_LIST 'eell' ++#define EFI_EDITOR_LINE_LIST EFI_SIGNATURE_32 ('e','e','l','l') + + #define FILE_ATTRIBUTES EFI_FILE_MODE_READ | EFI_FILE_MODE_WRITE | EFI_FILE_MODE_CREATE + #define FILE_READ_WRITE EFI_FILE_MODE_READ | EFI_FILE_MODE_WRITE +@@ -147,8 +147,8 @@ + } HEFI_EDITOR_MENU_ITEM; + + typedef struct { +- UINT32 Foreground : 4; +- UINT32 Background : 4; ++ UINT8 Foreground : 4; ++ UINT8 Background : 4; + } HEFI_EDITOR_COLOR_ATTRIBUTES; + + typedef union { +@@ -251,3 +251,4 @@ + } HEFI_EDITOR_GLOBAL_EDITOR; + + #endif ++ +Index: hexedit/libMemImage.c +=================================================================== +--- hexedit/libMemImage.c (revision 64) ++++ hexedit/libMemImage.c (working copy) +@@ -91,7 +91,7 @@ + Status = BS->LocateProtocol ( + &gEfiPciRootBridgeIoProtocolGuid, + NULL, +- &HMemImage.IoFncs ++ (VOID**)&HMemImage.IoFncs + ); + if (Status == EFI_NOT_FOUND) { + // +@@ -225,9 +225,6 @@ + CHAR16 *Str; + HEFI_EDITOR_LINE *Line; + +- HEFI_EDITOR_ACTIVE_BUFFER_TYPE BufferTypeBackup; +- +- BufferTypeBackup = HBufferImage.BufferType; + HBufferImage.BufferType = MEM_BUFFER; + + Buffer = AllocatePool (Size); +@@ -344,8 +341,6 @@ + EFI_STATUS Status; + VOID *Buffer; + +- HEFI_EDITOR_ACTIVE_BUFFER_TYPE BufferTypeBackup; +- + // + // not modified, so directly return + // +@@ -353,7 +348,6 @@ + return EFI_SUCCESS; + } + +- BufferTypeBackup = HBufferImage.BufferType; + HBufferImage.BufferType = MEM_BUFFER; + + Buffer = AllocatePool (Size); +Index: hexedit/libbufferimage.h +=================================================================== +--- hexedit/libbufferimage.h (revision 64) ++++ hexedit/libbufferimage.h (working copy) +@@ -253,3 +253,4 @@ + ); + + #endif ++ +Index: hexedit/libInputBar.c +=================================================================== +--- hexedit/libInputBar.c (revision 64) ++++ hexedit/libInputBar.c (working copy) +@@ -169,8 +169,6 @@ + UINTN Size; + EFI_STATUS Status; + BOOLEAN NoDisplay; +- UINTN Limit; +- UINTN PromptLen; + + // + // variable initialization +@@ -190,6 +188,7 @@ + // back up the old screen attributes + // + Orig = HMainEditor.ColorAttributes; ++ New.Data = 0; + New.Colors.Foreground = Orig.Colors.Background; + New.Colors.Background = Orig.Colors.Foreground; + +@@ -201,15 +200,9 @@ + HEditorClearLine (INPUT_BAR_LOCATION); + + Out->SetCursorPosition (Out, 0, INPUT_BAR_LOCATION - 1); +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBINPUTBAR_MAININPUTBAR), HiiHandle, HMainInputBar.Prompt); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBINPUTBAR_MAININPUTBAR), gHexEditHiiHandle, HMainInputBar.Prompt); + + // +- // that's the maximum input length that can be displayed on screen +- // +- PromptLen = StrLen (HMainInputBar.Prompt); +- Limit = HMainEditor.ScreenSize.Column - PromptLen; +- +- // + // this is a selection prompt, cursor will stay in edit area + // actually this is for search , search/replace + // +Index: hexedit/libmemimage.h +=================================================================== +--- hexedit/libmemimage.h (revision 64) ++++ hexedit/libmemimage.h (working copy) +@@ -55,3 +55,4 @@ + ); + + #endif ++ +Index: hexedit/libEditor.c +=================================================================== +--- hexedit/libEditor.c (revision 64) ++++ hexedit/libEditor.c (working copy) +@@ -20,7 +20,7 @@ + + --*/ + +-#include "Heditor.h" ++#include "heditor.h" + + HEFI_EDITOR_COLOR_ATTRIBUTES HOriginalColors; + INTN HOriginalMode; +@@ -136,7 +136,7 @@ + Status = BS->HandleProtocol ( + In, + &gEfiSimplePointerProtocolGuid, +- &HMainEditor.MouseInterface ++ (VOID**)&HMainEditor.MouseInterface + ); + if (EFI_ERROR (Status)) { + // +@@ -159,7 +159,7 @@ + Status = BS->HandleProtocol ( + HandleBuffer[Index], + &gEfiSimplePointerProtocolGuid, +- &HMainEditor.MouseInterface ++ (VOID**)&HMainEditor.MouseInterface + ); + if (!EFI_ERROR (Status)) { + break; +@@ -182,37 +182,37 @@ + // + Status = HMainTitleBarInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_TITLE), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_TITLE), gHexEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = HMainMenuBarInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_MAINMENU), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_MAINMENU), gHexEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = HMainStatusBarInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_STATUS), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_STATUS), gHexEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = HMainInputBarInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_INPUTBAR), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_INPUTBAR), gHexEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = HBufferImageInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_BUFFERIMAGE), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_BUFFERIMAGE), gHexEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = HClipBoardInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_CLIPBOARD), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MAINEDITOR_CLIPBOARD), gHexEditHiiHandle); + return EFI_LOAD_ERROR; + } + // +@@ -259,32 +259,32 @@ + // + Status = HMainTitleBarCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_TITLEBAR_CLEAN), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_TITLEBAR_CLEAN), gHexEditHiiHandle); + } + + Status = HMainMenuBarCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MENUBAR_CLEAN), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_MENUBAR_CLEAN), gHexEditHiiHandle); + } + + Status = HMainStatusBarCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_STATUSBAR_CLEAN), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_STATUSBAR_CLEAN), gHexEditHiiHandle); + } + + Status = HMainInputBarCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_INPUTBAR_CLEAN), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_INPUTBAR_CLEAN), gHexEditHiiHandle); + } + + Status = HBufferImageCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_BUFFERIMAGE_CLEAN), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_BUFFERIMAGE_CLEAN), gHexEditHiiHandle); + } + + Status = HClipBoardCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_CLIPBOARD_CLEAN), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBEDITOR_CLIPBOARD_CLEAN), gHexEditHiiHandle); + } + // + // restore old mode +@@ -732,6 +732,9 @@ + case MEM_BUFFER: + OldSize = HBufferImage.MemImage->Size; + break; ++ ++ default: ++ break; + } + + if (LengthChange == FALSE) { +Index: hexedit/libfileimage.h +=================================================================== +--- hexedit/libfileimage.h (revision 64) ++++ hexedit/libfileimage.h (working copy) +@@ -59,3 +59,4 @@ + ); + + #endif ++ +Index: hexedit/libinputbar.h +=================================================================== +--- hexedit/libinputbar.h (revision 64) ++++ hexedit/libinputbar.h (working copy) +@@ -44,3 +44,4 @@ + ); + + #endif ++ +Index: hexedit/libMenuBar.c +=================================================================== +--- hexedit/libMenuBar.c (revision 64) ++++ hexedit/libMenuBar.c (working copy) +@@ -222,7 +222,6 @@ + CHAR16 *NameString; + CHAR16 *FunctionKeyString; + UINTN BufferSize; +- EFI_STATUS Status; + + // + // variable initialization +@@ -255,9 +254,9 @@ + FunctionKeyString = AllocatePool (BufferSize); + + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) +- Status = Hii->GetString (Hii, HiiHandle, Item->NameToken, FALSE, NULL, &BufferSize, NameString); ++ Hii->GetString (Hii, gHexEditHiiHandle, Item->NameToken, FALSE, NULL, &BufferSize, NameString); + #else +- Status = LibGetString (HiiHandle, Item->NameToken, NameString, &BufferSize); ++ LibGetString (gHexEditHiiHandle, Item->NameToken, NameString, &BufferSize); + #endif + + Width = max ((StrLen (NameString) + 6), 18); +@@ -267,9 +266,9 @@ + } + + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) +- Status = Hii->GetString (Hii, HiiHandle, Item->FunctionKeyToken, FALSE, NULL, &BufferSize, FunctionKeyString); ++ Hii->GetString (Hii, gHexEditHiiHandle, Item->FunctionKeyToken, FALSE, NULL, &BufferSize, FunctionKeyString); + #else +- Status = LibGetString (HiiHandle, Item->FunctionKeyToken, FunctionKeyString, &BufferSize); ++ LibGetString (gHexEditHiiHandle, Item->FunctionKeyToken, FunctionKeyString, &BufferSize); + #endif + if (Index >= 10) { + PrintAt (Col - 1, Row - 1, L"%E%s%N %H%s%N ", FunctionKeyString, NameString); +@@ -1138,7 +1137,6 @@ + // the file won't be saved + // + return EFI_SUCCESS; +- break; + + case L'c': + case L'C': +@@ -1567,7 +1565,6 @@ + --*/ + { + UINTN Index; +- HEFI_EDITOR_LINE *Line; + EFI_LIST_ENTRY *Link; + UINT8 *Buffer; + UINTN Count; +@@ -1592,8 +1589,6 @@ + Link = Link->Flink; + } + +- Line = CR (Link, HEFI_EDITOR_LINE, Link, EFI_EDITOR_LINE_LIST); +- + Count = HMainEditor.SelectEnd - HMainEditor.SelectStart + 1; + Buffer = AllocatePool (Count); + if (Buffer == NULL) { +Index: hexedit/libeditor.h +=================================================================== +--- hexedit/libeditor.h (revision 64) ++++ hexedit/libeditor.h (working copy) +@@ -47,3 +47,4 @@ + ); + + #endif ++ +Index: hexedit/hexedit.inf +=================================================================== +--- hexedit/hexedit.inf (revision 64) ++++ hexedit/hexedit.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + HexeditStrings.uni + heditor.h + heditortype.h +@@ -45,17 +45,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: hexedit/libdiskimage.c +=================================================================== +--- hexedit/libdiskimage.c (revision 64) ++++ hexedit/libdiskimage.c (working copy) +@@ -228,11 +228,7 @@ + UINTN Bytes; + + HEFI_EDITOR_LINE *Line; +- UINT64 ByteOffset; + +- HEFI_EDITOR_ACTIVE_BUFFER_TYPE BufferTypeBackup; +- +- BufferTypeBackup = HBufferImage.BufferType; + HBufferImage.BufferType = DISK_BUFFER; + + DevicePath = (EFI_DEVICE_PATH_PROTOCOL *) ShellGetMap (DeviceName); +@@ -246,7 +242,7 @@ + Status = LibDevicePathToInterface ( + &gEfiBlockIoProtocolGuid, + DevicePath, +- &BlkIo ++ (VOID**)&BlkIo + ); + if (EFI_ERROR (Status)) { + HMainStatusBarSetStatusString (L"Read Disk Failed"); +@@ -269,8 +265,6 @@ + return EFI_OUT_OF_RESOURCES; + } + +- ByteOffset = MultU64x32 (Offset, BlkIo->Media->BlockSize); +- + // + // read from disk + // +@@ -405,10 +399,6 @@ + VOID *Buffer; + UINTN Bytes; + +- UINT64 ByteOffset; +- +- HEFI_EDITOR_ACTIVE_BUFFER_TYPE BufferTypeBackup; +- + // + // if not modified, directly return + // +@@ -416,7 +406,6 @@ + return EFI_SUCCESS; + } + +- BufferTypeBackup = HBufferImage.BufferType; + HBufferImage.BufferType = DISK_BUFFER; + + DevicePath = (EFI_DEVICE_PATH_PROTOCOL *) ShellGetMap (DeviceName); +@@ -427,7 +416,7 @@ + Status = LibDevicePathToInterface ( + &gEfiBlockIoProtocolGuid, + DevicePath, +- &BlkIo ++ (VOID**)&BlkIo + ); + if (EFI_ERROR (Status)) { + return Status; +@@ -448,8 +437,6 @@ + return Status; + } + +- ByteOffset = MultU64x32 (Offset, BlkIo->Media->BlockSize); +- + // + // write the buffer to disk + // +Index: hexedit/main.c +=================================================================== +--- hexedit/main.c (revision 64) ++++ hexedit/main.c (working copy) +@@ -27,7 +27,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++EFI_HII_HANDLE gHexEditHiiHandle; + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) + EFI_HII_PROTOCOL *Hii; + #endif +@@ -67,7 +67,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE)0 + } + }; + +@@ -93,10 +93,10 @@ + VOID + ) + { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_USAGE), HiiHandle); +- PrintToken (STRING_TOKEN (STR_HEXEDIT_FILENAME), HiiHandle); +- PrintToken (STRING_TOKEN (STR_HEXEDIT_DISKNAME), HiiHandle); +- PrintToken (STRING_TOKEN (STR_HEXEDIT_OFFSET_SIZE), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_USAGE), gHexEditHiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_FILENAME), gHexEditHiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_DISKNAME), gHexEditHiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_OFFSET_SIZE), gHexEditHiiHandle); + Print (L"\n\n"); + } + +@@ -147,7 +147,7 @@ + EFI_SHELL_APP_INIT (ImageHandle, SystemTable); + + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) +- Status = LibLocateProtocol (&gEfiHiiProtocolGuid, &Hii); ++ Status = LibLocateProtocol (&gEfiHiiProtocolGuid, (VOID**)&Hii); + if (EFI_ERROR (Status)) { + return Status; + } +@@ -158,12 +158,12 @@ + // Register our string package with HII and return the handle to it. + // If previously registered we will simply receive the handle + // +- EFI_SHELL_STR_INIT (HiiHandle, STRING_ARRAY_NAME, EfiHexeditGuid); ++ EFI_SHELL_STR_INIT (gHexEditHiiHandle, STRING_ARRAY_NAME, EfiHexeditGuid); + + if (!EFI_PROPER_VERSION (1, 10)) { + PrintToken ( + STRING_TOKEN (STR_SHELLENV_GNC_COMMAND_NOT_SUPPORT), +- HiiHandle, ++ gHexEditHiiHandle, + L"hexedit", + EFI_VERSION_1_10 + ); +@@ -187,17 +187,17 @@ + switch (RetCode) { + case VarCheckConflict: + +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_FLAG_CONFLICT), HiiHandle, L"hexedit", Useful); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_FLAG_CONFLICT), gHexEditHiiHandle, L"hexedit", Useful); + break; + + case VarCheckDuplicate: + +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_DUP_FLAG), HiiHandle, L"hexedit", Useful); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_DUP_FLAG), gHexEditHiiHandle, L"hexedit", Useful); + break; + + case VarCheckUnknown: + +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_UNKNOWN_FLAG), HiiHandle, L"hexedit", Useful); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_UNKNOWN_FLAG), gHexEditHiiHandle, L"hexedit", Useful); + break; + + default: +@@ -220,10 +220,10 @@ + ChkPck.FlagCount > 2 || + (ChkPck.FlagCount == 2 && LibCheckVarGetFlag (&ChkPck, L"-b") == NULL) + ) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + } else { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_VERBOSE_HELP), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_VERBOSE_HELP), gHexEditHiiHandle); + Status = EFI_SUCCESS; + } + +@@ -233,13 +233,13 @@ + Item = LibCheckVarGetFlag (&ChkPck, L"-d"); + if (Item) { + if (3 < ChkPck.ValueCount) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + goto done; + } + + if (3 > ChkPck.ValueCount) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_FEW), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_FEW), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -249,7 +249,7 @@ + Item = Item->Next; + Result = HXtoi (Item->VarStr, &Offset); + if (EFI_ERROR (Result)) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), HiiHandle, L"hexedit", Item->VarStr); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), gHexEditHiiHandle, L"hexedit", Item->VarStr); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -257,13 +257,13 @@ + Item = Item->Next; + Result = HXtoi (Item->VarStr, &Size); + if (EFI_ERROR (Result)) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), HiiHandle, L"hexedit", Item->VarStr); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), gHexEditHiiHandle, L"hexedit", Item->VarStr); + Status = EFI_INVALID_PARAMETER; + goto done; + } + + if (Offset < 0 || Size <= 0) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), HiiHandle, L"hexedit", Item->VarStr); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), gHexEditHiiHandle, L"hexedit", Item->VarStr); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -274,13 +274,13 @@ + Item = LibCheckVarGetFlag (&ChkPck, L"-m"); + if (Item) { + if (2 < ChkPck.ValueCount) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + goto done; + } + + if (2 > ChkPck.ValueCount) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_FEW), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_FEW), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -288,7 +288,7 @@ + Item = ChkPck.VarList; + Result = HXtoi (Item->VarStr, &Offset); + if (EFI_ERROR (Result)) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), HiiHandle, L"hexedit", Item->VarStr); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), gHexEditHiiHandle, L"hexedit", Item->VarStr); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -296,20 +296,20 @@ + Item = Item->Next; + Result = HXtoi (Item->VarStr, &Size); + if (EFI_ERROR (Result)) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), HiiHandle, L"hexedit", Item->VarStr); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), gHexEditHiiHandle, L"hexedit", Item->VarStr); + Status = EFI_INVALID_PARAMETER; + goto done; + } + + if (Offset < 0 || Size <= 0) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), HiiHandle, L"hexedit", Item->VarStr); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), gHexEditHiiHandle, L"hexedit", Item->VarStr); + Status = EFI_INVALID_PARAMETER; + goto done; + } + + LastOffset = (UINT64) Offset + (UINT64) Size - (UINT64) 1; + if (LastOffset > 0xffffffff) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), HiiHandle, L"hexedit", Item->VarStr); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_INVALID_ARG), gHexEditHiiHandle, L"hexedit", Item->VarStr); + goto done; + } + +@@ -319,13 +319,13 @@ + Item = LibCheckVarGetFlag (&ChkPck, L"-f"); + if (Item) { + if (1 < ChkPck.ValueCount) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + goto done; + } + + if (1 > ChkPck.ValueCount) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_FEW), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_FEW), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -333,7 +333,7 @@ + Item = ChkPck.VarList; + Name = Item->VarStr; + if (!HIsValidFileName (Name)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_FILE_NAME), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_FILE_NAME), gHexEditHiiHandle); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -345,20 +345,20 @@ + if (Name != NULL) { + FreeName = TRUE; + } else { +- PrintToken(STRING_TOKEN (STR_HEXEDIT_INVALID_DIRECTORY), HiiHandle, L"hexedit"); ++ PrintToken(STRING_TOKEN (STR_HEXEDIT_INVALID_DIRECTORY), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + goto done ; + } + } else if (1 == ChkPck.ValueCount) { + Name = ChkPck.VarList->VarStr; + } else { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), gHexEditHiiHandle, L"hexedit"); + Status = EFI_INVALID_PARAMETER; + goto done; + } + + if (!HIsValidFileName (Name)) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_FILE_NAME), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_FILE_NAME), gHexEditHiiHandle); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -367,7 +367,7 @@ + } + + if (SI->RedirArgc != 0) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_NOREDIRECT), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_NOREDIRECT), gHexEditHiiHandle); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -376,7 +376,7 @@ + if (EFI_ERROR (Status)) { + Out->ClearScreen (Out); + Out->EnableCursor (Out, TRUE); +- PrintToken (STRING_TOKEN (STR_HEXEDIT_INIT_FAILED), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_INIT_FAILED), gHexEditHiiHandle); + goto done; + } + +@@ -421,7 +421,9 @@ + FALSE + ); + break; +- ++ case NEW_FILE: ++ Status = EFI_UNSUPPORTED; ++ break; + } + + if (!EFI_ERROR (Status)) { +@@ -453,19 +455,19 @@ + // + if (Status == EFI_SUCCESS) { + } else if (Status == EFI_OUT_OF_RESOURCES) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_OUT_RESOURCE), HiiHandle, L"hexedit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_OUT_RESOURCE), gHexEditHiiHandle, L"hexedit"); + } else { + if (Buffer != NULL) { + if (StrCmp (Buffer, L"") != 0) { + // + // print out the status string + // +- PrintToken (STRING_TOKEN (STR_HEXEDIT_ONE_VAR), HiiHandle, Buffer); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_ONE_VAR), gHexEditHiiHandle, Buffer); + } else { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_UNKNOWN_EDITOR), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_UNKNOWN_EDITOR), gHexEditHiiHandle); + } + } else { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_UNKNOWN_EDITOR), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_UNKNOWN_EDITOR), gHexEditHiiHandle); + } + } + +Index: hexedit/libmenubar.h +=================================================================== +--- hexedit/libmenubar.h (revision 64) ++++ hexedit/libmenubar.h (working copy) +@@ -20,7 +20,7 @@ + #ifndef _LIB_MENU_BAR_H_ + #define _LIB_MENU_BAR_H_ + +-#include "Heditortype.h" ++#include "heditortype.h" + + EFI_STATUS + HMainMenuBarInit ( +@@ -94,3 +94,4 @@ + ); + + #endif ++ +Index: hexedit/libMisc.h +=================================================================== +--- hexedit/libMisc.h (revision 64) ++++ hexedit/libMisc.h (working copy) +@@ -20,7 +20,7 @@ + #ifndef _LIB_MISC_H_ + #define _LIB_MISC_H_ + +-#include "Heditortype.h" ++#include "heditortype.h" + + VOID + HEditorClearLine ( +@@ -108,3 +108,4 @@ + ); + + #endif ++ +Index: hexedit/libdiskimage.h +=================================================================== +--- hexedit/libdiskimage.h (revision 64) ++++ hexedit/libdiskimage.h (working copy) +@@ -58,3 +58,4 @@ + ); + + #endif ++ +Index: hexedit/libclipboard.h +=================================================================== +--- hexedit/libclipboard.h (revision 64) ++++ hexedit/libclipboard.h (working copy) +@@ -43,3 +43,4 @@ + ); + + #endif ++ +Index: hexedit/libTitleBar.c +=================================================================== +--- hexedit/libTitleBar.c (revision 64) ++++ hexedit/libTitleBar.c (working copy) +@@ -166,6 +166,7 @@ + // backup the old screen attributes + // + Orig = HMainEditor.ColorAttributes; ++ New.Data = 0; + New.Colors.Foreground = Orig.Colors.Background; + New.Colors.Background = Orig.Colors.Foreground; + +@@ -212,7 +213,7 @@ + // the space for file name is 35 characters + // + if (StrLen (FileNameTmp) <= 35) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MAINEDITOR), HiiHandle, FileNameTmp); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MAINEDITOR), gHexEditHiiHandle, FileNameTmp); + + for (Index = StrLen (FileNameTmp); Index < 35; Index++) { + Print (L" "); +@@ -220,7 +221,7 @@ + + } else { + for (Index = 0; Index < 32; Index++) { +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MAINEDITOR_C), HiiHandle, FileNameTmp[Index]); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MAINEDITOR_C), gHexEditHiiHandle, FileNameTmp[Index]); + } + // + // print "..." +@@ -234,14 +235,14 @@ + if (StrLen (HMainEditor.BufferImage->DiskImage->Name) <= 9) { + PrintToken ( + STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MAINEDITOR), +- HiiHandle, ++ gHexEditHiiHandle, + HMainEditor.BufferImage->DiskImage->Name + ); + } else { + for (Index = 0; Index < 6; Index++) { + PrintToken ( + STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MAINEDITOR_C), +- HiiHandle, ++ gHexEditHiiHandle, + HMainEditor.BufferImage->DiskImage->Name[Index] + ); + } +@@ -253,7 +254,7 @@ + + PrintToken ( + STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MAINEDITOR_TWOVARS), +- HiiHandle, ++ gHexEditHiiHandle, + HMainEditor.BufferImage->DiskImage->Offset, + HMainEditor.BufferImage->DiskImage->Offset + HMainEditor.BufferImage->DiskImage->Size - 1 + ); +@@ -269,7 +270,7 @@ + case MEM_BUFFER: + PrintToken ( + STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MAINEDITOR_TWOVARS), +- HiiHandle, ++ gHexEditHiiHandle, + HMainEditor.BufferImage->MemImage->Offset, + HMainEditor.BufferImage->MemImage->Offset + HMainEditor.BufferImage->MemImage->Size - 1 + ); +@@ -280,22 +281,27 @@ + + break; + ++ default: ++ break; + } + // + // 9 characters + // + switch (HMainEditor.BufferImage->BufferType) { + case FILE_BUFFER: +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_FILE), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_FILE), gHexEditHiiHandle); + break; + + case DISK_BUFFER: +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_DISK), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_DISK), gHexEditHiiHandle); + break; + + case MEM_BUFFER: +- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MEM), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBTITLEBAR_MEM), gHexEditHiiHandle); + break; ++ ++ default: ++ break; + } + // + // print modified field +Index: Ping/Ping.h +=================================================================== +--- Ping/Ping.h (revision 64) ++++ Ping/Ping.h (working copy) +@@ -78,3 +78,4 @@ + } ICMP_TX_INFO; + + #endif ++ +Index: Ping/Ping.inf +=================================================================== +--- Ping/Ping.inf (revision 64) ++++ Ping/Ping.inf (working copy) +@@ -25,24 +25,24 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + PingStrings.uni + Ping.h + Ping.c + + [includes.common] +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(EDK_SOURCE)\Foundation\Library\Dxe\Include +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(EDK_SOURCE)/Foundation/Library/Dxe/Include ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +@@ -52,7 +52,6 @@ + ArchProtocolLib + EdkGuidLib + EdkFrameworkGuidLib +- EfiDriverLib + + [libraries.Ia32] + CpuIA32Lib +Index: Ping/Ping.c +=================================================================== +--- Ping/Ping.c (revision 64) ++++ Ping/Ping.c (working copy) +@@ -20,14 +20,14 @@ + --*/ + + #include "EfiShellLib.h" +-#include "CpuFuncs.h" ++//#include "CpuFuncs.h" + #include EFI_ARCH_PROTOCOL_DEFINITION (Cpu) + #include EFI_PROTOCOL_DEFINITION (Ip4) + #include "Ping.h" + #include STRING_DEFINES_FILE + extern UINT8 STRING_ARRAY_NAME[]; + +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + + EFI_GUID EfiPingGuid = EFI_PING_GUID; + SHELL_VAR_CHECK_ITEM PingCheckList[] = { +@@ -59,7 +59,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -114,6 +114,8 @@ + UINT32 RttMin; + UINT32 RttMax; + ++EFI_CPU_ARCH_PROTOCOL *gCpu = NULL; ++ + STATIC + UINT64 + GetTimerValue ( +@@ -135,7 +137,22 @@ + + --*/ + { +- return EfiReadTsc (); ++ static UINT64 CurrentTick = 0; ++ UINT64 TimerPeriod; ++ EFI_STATUS Status; ++ ++ ASSERT (gCpu != NULL); ++ ++ Status = gCpu->GetTimerValue (gCpu, 0, &CurrentTick, &TimerPeriod); ++ if (EFI_ERROR (Status)) { ++ // ++ // The WinntGetTimerValue will return EFI_UNSUPPORTED. Set the ++ // TimerPeriod by ourselves. ++ // ++ CurrentTick += 1000000; ++ } ++ ++ return CurrentTick; + } + + STATIC +@@ -168,7 +185,7 @@ + // + // Locate the Cpu Arch Protocol. + // +- Status = BS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, &Cpu); ++ Status = BS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, (VOID**)&Cpu); + if (EFI_ERROR (Status)) { + return Status; + } +Index: time/time.c +=================================================================== +--- time/time.c (revision 64) ++++ time/time.c (working copy) +@@ -49,7 +49,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -64,8 +64,8 @@ + BOOLEAN + GetNumber ( + IN CHAR16 *Str, +- IN OUT INTN *Offset, +- IN OUT INTN *number, ++ IN OUT UINTN *Offset, ++ IN OUT UINTN *number, + IN BOOLEAN GetSecond + ); + +@@ -296,8 +296,8 @@ + BOOLEAN + GetNumber ( + IN CHAR16 *Str, +- IN OUT INTN *Offset, +- IN OUT INTN *Number, ++ IN OUT UINTN *Offset, ++ IN OUT UINTN *Number, + IN BOOLEAN GetSecond + ) + { +Index: time/time.h +=================================================================== +--- time/time.h (revision 64) ++++ time/time.h (working copy) +@@ -32,3 +32,4 @@ + } + + #endif ++ +Index: time/time.inf +=================================================================== +--- time/time.inf (revision 64) ++++ time/time.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + TimeStrings.uni + Time.c + Time.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mount/mount.c +=================================================================== +--- mount/mount.c (revision 64) ++++ mount/mount.c (working copy) +@@ -36,7 +36,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiMountGuid = EFI_MOUNT_GUID; + SHELL_VAR_CHECK_ITEM MountCheckList[] = { + { +@@ -55,7 +55,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: mount/mount.h +=================================================================== +--- mount/mount.h (revision 64) ++++ mount/mount.h (working copy) +@@ -33,3 +33,4 @@ + } + + #endif ++ +Index: mount/mount.inf +=================================================================== +--- mount/mount.inf (revision 64) ++++ mount/mount.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + MountStrings.uni + mount.c + mount.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mkdir/mkdir.inf +=================================================================== +--- mkdir/mkdir.inf (revision 64) ++++ mkdir/mkdir.inf (working copy) +@@ -41,23 +41,23 @@ + + [sources.common] + MkdirStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + mkdir.c + mkdir.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mkdir/mkdir.c +=================================================================== +--- mkdir/mkdir.c (revision 64) ++++ mkdir/mkdir.c (working copy) +@@ -49,7 +49,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiMkdirGuid = EFI_MKDIR_GUID; + SHELL_VAR_CHECK_ITEM MkdirCheckList[] = { + { +@@ -68,7 +68,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: mkdir/mkdir.h +=================================================================== +--- mkdir/mkdir.h (revision 64) ++++ mkdir/mkdir.h (working copy) +@@ -29,4 +29,5 @@ + 0x75ecb57f, 0x4264, 0x49d2, 0x98, 0xe6, 0x39, 0x1a, 0x32, 0x17, 0x9d, 0xf2 \ + } + +-#endif +\ No newline at end of file ++#endif ++ +Index: pci/pci.h +=================================================================== +--- pci/pci.h (revision 64) ++++ pci/pci.h (working copy) +@@ -30,7 +30,7 @@ + 0x388da6c3, 0x3447, 0x4b1f, 0xa0, 0xba, 0xa9, 0xe8, 0xa2, 0x87, 0xf1, 0x76 \ + } + +-#include "TIANO.h" ++#include "Tiano.h" + + typedef enum { + PciDevice, +@@ -477,3 +477,4 @@ + #pragma pack() + + #endif // _PCI_H_ ++ +Index: pci/pci_class.c +=================================================================== +--- pci/pci_class.c (revision 64) ++++ pci/pci_class.c (working copy) +@@ -30,7 +30,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + + PCI_CLASS_ENTRY gClassStringList[]; + +Index: pci/pci.inf +=================================================================== +--- pci/pci.inf (revision 64) ++++ pci/pci.inf (working copy) +@@ -41,7 +41,7 @@ + + [sources.common] + PciStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + pci.c + pci.h + pci_class.h +@@ -49,17 +49,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: pci/pci_class.h +=================================================================== +--- pci/pci_class.h (revision 64) ++++ pci/pci_class.h (working copy) +@@ -24,7 +24,7 @@ + #ifndef _PCI_CLASS_H_ + #define _PCI_CLASS_H_ + +-#include "TIANO.h" // for UINT32 etc. ++#include "Tiano.h" // for UINT32 etc. + #define PCI_CLASS_STRING_LIMIT 54 + // + // Printable strings for Pci class code +@@ -58,3 +58,4 @@ + ); + + #endif // _PCI_CLASS_H_ ++ +Index: pci/pci.c +=================================================================== +--- pci/pci.c (revision 64) ++++ pci/pci.c (working copy) +@@ -334,7 +334,7 @@ + { + 0, + 0, +- 0, ++ (PCIE_CAPREG_FIELD_WIDTH)0, + NULL, + PcieExplainTypeMax + } +@@ -344,7 +344,7 @@ + // Global Variables + // + PCI_CONFIG_SPACE *mConfigSpace; +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiPciGuid = EFI_PCI_GUID; + SHELL_VAR_CHECK_ITEM PciCheckList[] = { + { +@@ -375,7 +375,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -1034,7 +1034,7 @@ + Status = BS->HandleProtocol ( + Handle, + &gEfiPciRootBridgeIoProtocolGuid, +- IoDev ++ (VOID**)IoDev + ); + + if (EFI_ERROR (Status)) { +@@ -1043,7 +1043,7 @@ + // + // Call Configuration() to get address space descriptors + // +- Status = (*IoDev)->Configuration (*IoDev, Descriptors); ++ Status = (*IoDev)->Configuration (*IoDev, (VOID**)Descriptors); + if (Status == EFI_UNSUPPORTED) { + *Descriptors = NULL; + return EFI_SUCCESS; +@@ -1237,7 +1237,7 @@ + PrintToken (STRING_TOKEN (STR_PCI2_SINGLE_FUNCTION), HiiHandle); + } + +- HeaderType = (UINT8) (Common->HeaderType & 0x7f); ++ HeaderType = (PCI_HEADER_TYPE) (Common->HeaderType & 0x7f); + switch (HeaderType) { + case PciDevice: + PrintToken (STRING_TOKEN (STR_PCI2_PCI_DEVICE), HiiHandle); +@@ -1300,6 +1300,9 @@ + ); + CapPtr = ConfigSpace->NonCommon.CardBus.CapabilitiesPtr; + break; ++ ++ default: ++ Status = EFI_UNSUPPORTED; + } + // + // If Status bit4 is 1, dump or explain capability structure +@@ -1956,7 +1959,7 @@ + INDEX_OF (&(CardBus->IoBase0)), + Io32Bit ? L" 32 bit" : L" 16 bit", + CardBus->IoBase0 & (Io32Bit ? 0xfffffffc : 0x0000fffc), +- CardBus->IoLimit0 & (Io32Bit ? 0xffffffff : 0x0000ffff) | 0x00000003 ++ (CardBus->IoLimit0 & (Io32Bit ? 0xffffffff : 0x0000ffff)) | 0x00000003 + ); + + Io32Bit = (BOOLEAN) (CardBus->IoBase1 & PCI_BIT_0); +@@ -1966,7 +1969,7 @@ + INDEX_OF (&(CardBus->IoBase1)), + Io32Bit ? L" 32 bit" : L" 16 bit", + CardBus->IoBase1 & (Io32Bit ? 0xfffffffc : 0x0000fffc), +- CardBus->IoLimit1 & (Io32Bit ? 0xffffffff : 0x0000ffff) | 0x00000003 ++ (CardBus->IoLimit1 & (Io32Bit ? 0xffffffff : 0x0000ffff)) | 0x00000003 + ); + + // +Index: memmap/memmap.h +=================================================================== +--- memmap/memmap.h (revision 64) ++++ memmap/memmap.h (working copy) +@@ -33,3 +33,4 @@ + } + + #endif ++ +Index: memmap/memmap.inf +=================================================================== +--- memmap/memmap.inf (revision 64) ++++ memmap/memmap.inf (working copy) +@@ -40,7 +40,7 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + memmapStrings.uni + memmap.c + memmap.h +@@ -48,17 +48,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: memmap/memmap.c +=================================================================== +--- memmap/memmap.c (revision 64) ++++ memmap/memmap.c (working copy) +@@ -35,7 +35,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiMemmapGuid = EFI_MEMMAP_GUID; + SHELL_VAR_CHECK_ITEM MemmapCheckList[] = { + { +@@ -54,7 +54,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -216,7 +216,7 @@ + } + + Bytes = LShiftU64 (Desc->NumberOfPages, 12); +- Ptr = MemoryTypeStr (Desc->Type); ++ Ptr = MemoryTypeStr ((EFI_MEMORY_TYPE)Desc->Type); + PrintToken ( + STRING_TOKEN (STR_MEMMAP_FIVE_ARGS), + HiiHandle, +Index: dblk/dblk.h +=================================================================== +--- dblk/dblk.h (revision 64) ++++ dblk/dblk.h (working copy) +@@ -168,3 +168,4 @@ + extern EFI_HII_HANDLE HiiDblkHandle; + + #endif ++ +Index: dblk/dblk.inf +=================================================================== +--- dblk/dblk.inf (revision 64) ++++ dblk/dblk.inf (working copy) +@@ -26,23 +26,23 @@ + + [sources.common] + DblkStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + dblk.c + efidump.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: dblk/efidump.c +=================================================================== +--- dblk/efidump.c (revision 64) ++++ dblk/efidump.c (working copy) +@@ -24,7 +24,7 @@ + --*/ + + #include "dblk.h" +-#include "Efipart.h" ++#include "EfiPart.h" + #include "EfiShellLib.h" + + #include STRING_DEFINES_FILE +@@ -320,13 +320,11 @@ + VOID *AcpiTable; + VOID *Acpi20Table; + VOID *SMBIOSTable; +- VOID *SalSystemTable; + VOID *MpsTable; + + AcpiTable = NULL; + Acpi20Table = NULL; + SMBIOSTable = NULL; +- SalSystemTable = NULL; + MpsTable = NULL; + + PrintToken ( +@@ -352,10 +350,12 @@ + PrintToken (STRING_TOKEN (STR_DEBUG_STD_ERROR_ON), HiiDblkHandle, LibDevicePathToStr (DevicePath)); + } + +- PrintToken (STRING_TOKEN (STR_DEBUG_RUNTIME_SERVICES), HiiDblkHandle, (UINT64) Tbl.Sys->RuntimeServices); +- PrintToken (STRING_TOKEN (STR_DEBUG_BOOT_SERVICES), HiiDblkHandle, (UINT64) Tbl.Sys->BootServices); ++ PrintToken (STRING_TOKEN (STR_DEBUG_RUNTIME_SERVICES), HiiDblkHandle, (UINT64)(UINTN) Tbl.Sys->RuntimeServices); ++ PrintToken (STRING_TOKEN (STR_DEBUG_BOOT_SERVICES), HiiDblkHandle, (UINT64)(UINTN) Tbl.Sys->BootServices); + + EFI64_CODE ( ++ VOID *SalSystemTable; ++ + Status = LibGetSystemConfigurationTable(&gEfiSalSystemTableGuid, &SalSystemTable); + if (!EFI_ERROR(Status)) { + PrintToken (STRING_TOKEN(STR_DEBUG_SAL_SYSTEM_TABLE), HiiDblkHandle, (UINT64)SalSystemTable); +@@ -364,22 +364,22 @@ + + Status = LibGetSystemConfigurationTable (&gEfiAcpiTableGuid, &AcpiTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_ACPI_TABLE), HiiDblkHandle, (UINT64) AcpiTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_ACPI_TABLE), HiiDblkHandle, (UINT64)(UINTN) AcpiTable); + } + + Status = LibGetSystemConfigurationTable (&gEfiAcpi20TableGuid, &Acpi20Table); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_APCI_2_TABLE), HiiDblkHandle, (UINT64) Acpi20Table); ++ PrintToken (STRING_TOKEN (STR_DEBUG_APCI_2_TABLE), HiiDblkHandle, (UINT64)(UINTN) Acpi20Table); + } + + Status = LibGetSystemConfigurationTable (&gEfiMpsTableGuid, &MpsTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_MPS_TABLE), HiiDblkHandle, (UINT64) MpsTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_MPS_TABLE), HiiDblkHandle, (UINT64)(UINTN) MpsTable); + } + + Status = LibGetSystemConfigurationTable (&gEfiSmbiosTableGuid, &SMBIOSTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_SMBIOS_TABLE), HiiDblkHandle, (UINT64) SMBIOSTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_SMBIOS_TABLE), HiiDblkHandle, (UINT64)(UINTN) SMBIOSTable); + } + } + +Index: dblk/dblk.c +=================================================================== +--- dblk/dblk.c (revision 64) ++++ dblk/dblk.c (working copy) +@@ -52,7 +52,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: date/date.h +=================================================================== +--- date/date.h (revision 64) ++++ date/date.h (working copy) +@@ -32,3 +32,4 @@ + } + + #endif ++ +Index: date/date.inf +=================================================================== +--- date/date.inf (revision 64) ++++ date/date.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + DateStrings.uni + Date.c + Date.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: date/date.c +=================================================================== +--- date/date.c (revision 64) ++++ date/date.c (working copy) +@@ -53,8 +53,8 @@ + BOOLEAN + GetNumber ( + IN CHAR16 *Str, +- IN OUT INTN *Position, +- IN OUT INTN *Number, ++ IN OUT UINTN *Position, ++ IN OUT UINTN *Number, + IN BOOLEAN EndNum + ); + +@@ -92,7 +92,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -330,8 +330,8 @@ + BOOLEAN + GetNumber ( + IN CHAR16 *Str, +- IN OUT INTN *Position, +- IN OUT INTN *Number, ++ IN OUT UINTN *Position, ++ IN OUT UINTN *Number, + IN BOOLEAN EndNum + ) + { +Index: rm/rm.c +=================================================================== +--- rm/rm.c (revision 64) ++++ rm/rm.c (working copy) +@@ -54,7 +54,7 @@ + NULL, + 0, + 0, +- FALSE ++ (SHELL_VAR_CHECK_FLAG_TYPE) FALSE + } + }; + +Index: rm/rm.h +=================================================================== +--- rm/rm.h (revision 64) ++++ rm/rm.h (working copy) +@@ -59,3 +59,4 @@ + ); + + #endif ++ +Index: rm/rm.inf +=================================================================== +--- rm/rm.inf (revision 64) ++++ rm/rm.inf (working copy) +@@ -41,23 +41,23 @@ + + [sources.common] + RmStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + rm.h + rm.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mem/MemCommonPart.c +=================================================================== +--- mem/MemCommonPart.c (revision 64) ++++ mem/MemCommonPart.c (working copy) +@@ -58,7 +58,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -149,7 +149,7 @@ + return EFI_SUCCESS; + } + +- Address = (AddressStr) ? Xtoi (AddressStr) : (UINT64) SystemTable; ++ Address = (AddressStr) ? Xtoi (AddressStr) : (UINT64)(UINTN) SystemTable; + Size = (SizeStr) ? Xtoi (SizeStr) : 512; + + // +@@ -157,7 +157,7 @@ + // + PrintToken (STRING_TOKEN (STR_MEM_MEMORY_ADDR), HiiMemHandle, 2 * sizeof (UINTN), Address, Size); + if (MMIo) { +- Status = BS->LocateProtocol (&gEfiPciRootBridgeIoProtocolGuid, NULL, &PciRootBridgeIo); ++ Status = BS->LocateProtocol (&gEfiPciRootBridgeIoProtocolGuid, NULL, (VOID**)&PciRootBridgeIo); + if (EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_LOC_PROT_ERR_EX), HiiMemHandle, L"mem", L"PciRootBridgeIo"); + return Status; +@@ -172,7 +172,7 @@ + return Status; + } + +- PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciIoWidthUint8, Address, Size, Buffer); ++ PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciWidthUint8, Address, Size, Buffer); + } else { + Buffer = (UINT8 *) (UINTN) Address; + } +@@ -233,7 +233,7 @@ + MMIo = FALSE; + AddressStr = NULL; + SizeStr = NULL; +- Address = (UINT64) SystemTable; ++ Address = (UINT64)(UINTN) SystemTable; + Size = 512; + RetCode = LibCheckVariables (SI, MemCheckList, &ChkPck, &Useful); + if (VarCheckOk != RetCode) { +@@ -312,7 +312,7 @@ + // + PrintToken (STRING_TOKEN (STR_MEM_NEW_MEMORY_ADDR), HiiMemHandle, 2 * sizeof (UINTN), Address, Size); + if (MMIo) { +- Status = BS->LocateProtocol (&gEfiPciRootBridgeIoProtocolGuid, NULL, &PciRootBridgeIo); ++ Status = BS->LocateProtocol (&gEfiPciRootBridgeIoProtocolGuid, NULL, (VOID**)&PciRootBridgeIo); + if (EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_LOC_PROT_ERR_EX), HiiMemHandle, L"mem", L"PciRootBridgeIo"); + return Status; +@@ -327,7 +327,7 @@ + return Status; + } + +- PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciIoWidthUint8, Address, Size, Buffer); ++ PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciWidthUint8, Address, Size, Buffer); + } else { + Buffer = (UINT8 *) (UINTN) Address; + } +Index: mem/MemCommonPart.h +=================================================================== +--- mem/MemCommonPart.h (revision 64) ++++ mem/MemCommonPart.h (working copy) +@@ -62,4 +62,4 @@ + IN EFI_BLOCK_IO_PROTOCOL *BlkIo + ); + +-#endif +\ No newline at end of file ++#endif +Index: mem/mem.inf +=================================================================== +--- mem/mem.inf (revision 64) ++++ mem/mem.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + MemStrings.uni + DebugStrings.uni + mm.c +@@ -34,17 +34,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mem/efidump.c +=================================================================== +--- mem/efidump.c (revision 64) ++++ mem/efidump.c (working copy) +@@ -24,7 +24,7 @@ + --*/ + + #include "debug.h" +-#include "Efipart.h" ++#include "EfiPart.h" + #include "EfiShellLib.h" + + #include STRING_DEFINES_FILE +@@ -320,13 +320,11 @@ + VOID *AcpiTable; + VOID *Acpi20Table; + VOID *SMBIOSTable; +- VOID *SalSystemTable; + VOID *MpsTable; + + AcpiTable = NULL; + Acpi20Table = NULL; + SMBIOSTable = NULL; +- SalSystemTable = NULL; + MpsTable = NULL; + + PrintToken ( +@@ -352,11 +350,13 @@ + PrintToken (STRING_TOKEN (STR_DEBUG_STD_ERROR_ON), HiiMemHandle, LibDevicePathToStr (DevicePath)); + } + +- PrintToken (STRING_TOKEN (STR_DEBUG_RUNTIME_SERVICES), HiiMemHandle, (UINT64) Tbl.Sys->RuntimeServices); +- PrintToken (STRING_TOKEN (STR_DEBUG_BOOT_SERVICES), HiiMemHandle, (UINT64) Tbl.Sys->BootServices); ++ PrintToken (STRING_TOKEN (STR_DEBUG_RUNTIME_SERVICES), HiiMemHandle, (UINT64)(UINTN) Tbl.Sys->RuntimeServices); ++ PrintToken (STRING_TOKEN (STR_DEBUG_BOOT_SERVICES), HiiMemHandle, (UINT64)(UINTN) Tbl.Sys->BootServices); + + EFI64_CODE ( +- Status = LibGetSystemConfigurationTable(&gEfiSalSystemTableGuid, &SalSystemTable); ++ VOID *SalSystemTable; ++ ++ Status = LibGetSystemConfigurationTable(&gEfiSalSystemTableGuid, &SalSystemTable); + if (!EFI_ERROR(Status)) { + PrintToken (STRING_TOKEN(STR_DEBUG_SAL_SYSTEM_TABLE), HiiMemHandle, (UINT64)SalSystemTable); + } +@@ -364,22 +364,22 @@ + + Status = LibGetSystemConfigurationTable (&gEfiAcpiTableGuid, &AcpiTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_ACPI_TABLE), HiiMemHandle, (UINT64) AcpiTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_ACPI_TABLE), HiiMemHandle, (UINT64)(UINTN) AcpiTable); + } + + Status = LibGetSystemConfigurationTable (&gEfiAcpi20TableGuid, &Acpi20Table); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_APCI_2_TABLE), HiiMemHandle, (UINT64) Acpi20Table); ++ PrintToken (STRING_TOKEN (STR_DEBUG_APCI_2_TABLE), HiiMemHandle, (UINT64)(UINTN) Acpi20Table); + } + + Status = LibGetSystemConfigurationTable (&gEfiMpsTableGuid, &MpsTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_MPS_TABLE), HiiMemHandle, (UINT64) MpsTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_MPS_TABLE), HiiMemHandle, (UINT64)(UINTN) MpsTable); + } + + Status = LibGetSystemConfigurationTable (&gEfiSmbiosTableGuid, &SMBIOSTable); + if (!EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_DEBUG_SMBIOS_TABLE), HiiMemHandle, (UINT64) SMBIOSTable); ++ PrintToken (STRING_TOKEN (STR_DEBUG_SMBIOS_TABLE), HiiMemHandle, (UINT64)(UINTN) SMBIOSTable); + } + } + +Index: mem/debug.h +=================================================================== +--- mem/debug.h (revision 64) ++++ mem/debug.h (working copy) +@@ -156,3 +156,4 @@ + extern EFI_HII_HANDLE HiiMemHandle; + + #endif ++ +Index: ls/ls.c +=================================================================== +--- ls/ls.c (revision 64) ++++ ls/ls.c (working copy) +@@ -59,7 +59,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -199,7 +199,6 @@ + CHAR16 *PtrTwo; + CHAR16 *Path; + EFI_LIST_ENTRY DirList; +- EFI_LIST_ENTRY *Link; + SHELL_FILE_ARG *Arg; + BOOLEAN WildcardsEncountered; + CHAR16 *Pattern; +@@ -210,7 +209,6 @@ + Argv = SI->Argv; + PtrTwo = NULL; + InitializeListHead (&DirList); +- Link = NULL; + Arg = NULL; + Pattern = NULL; + Status = EFI_SUCCESS; +@@ -815,8 +813,6 @@ + CHAR16 *Path + ) + { +- +- EFI_STATUS Status; + CHAR16 *PtrOne; + CHAR16 *PtrTwo; + UINTN Index1; +@@ -825,7 +821,6 @@ + BOOLEAN LeadingBlanks; + + LeadingBlanks = TRUE; +- Status = EFI_SUCCESS; + + for (PtrOne = PtrTwo = Path; PtrOne < Path + StrLen (Path); PtrOne++) { + if ((*PtrOne) == ' ' && LeadingBlanks) { +@@ -917,14 +912,14 @@ + + if ((IsMatch && mIgnoreAttribute) || + (IsMatch && !mAttributes && !(Info->Attribute & EFI_FILE_HIDDEN) && !(Info->Attribute & EFI_FILE_SYSTEM)) || +- IsMatch && ++ (IsMatch && + mAttributes && + ( + (mAttribA ? (Info->Attribute & EFI_FILE_ARCHIVE ? TRUE : FALSE) : TRUE) && + (mAttribH ? (Info->Attribute & EFI_FILE_HIDDEN ? TRUE : FALSE) : TRUE) && + (mAttribR ? (Info->Attribute & EFI_FILE_READ_ONLY ? TRUE : FALSE) : TRUE) && + (mAttribS ? (Info->Attribute & EFI_FILE_SYSTEM ? TRUE : FALSE) : TRUE) && +- (mAttribD ? (Info->Attribute & EFI_FILE_DIRECTORY ? TRUE : FALSE) : TRUE) ++ (mAttribD ? (Info->Attribute & EFI_FILE_DIRECTORY ? TRUE : FALSE) : TRUE)) + ) + ) { + IsMatch = TRUE; +Index: ls/ls.h +=================================================================== +--- ls/ls.h (revision 64) ++++ ls/ls.h (working copy) +@@ -91,4 +91,5 @@ + IN UINT16 VHlpToken + ); + +-#endif +\ No newline at end of file ++#endif ++ +Index: ls/ls.inf +=================================================================== +--- ls/ls.inf (revision 64) ++++ ls/ls.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + LsStrings.uni + ls.c + ls.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: stall/stall.c +=================================================================== +--- stall/stall.c (revision 64) ++++ stall/stall.c (working copy) +@@ -50,7 +50,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: stall/stall.h +=================================================================== +--- stall/stall.h (revision 64) ++++ stall/stall.h (working copy) +@@ -30,3 +30,4 @@ + } + + #endif ++ +Index: stall/stall.inf +=================================================================== +--- stall/stall.inf (revision 64) ++++ stall/stall.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + stallStrings.uni + stall.c + stall.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: DeviceTree/devicetree.c +=================================================================== +--- DeviceTree/devicetree.c (revision 64) ++++ DeviceTree/devicetree.c (working copy) +@@ -36,7 +36,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiDevicetreeGuid = EFI_DEVICETREE_GUID; + SHELL_VAR_CHECK_ITEM DevicetreeCheckList[] = { + { +@@ -67,7 +67,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: DeviceTree/devicetree.h +=================================================================== +--- DeviceTree/devicetree.h (revision 64) ++++ DeviceTree/devicetree.h (working copy) +@@ -32,3 +32,4 @@ + 0xf21044af, 0xeef6, 0x4d58, 0xb4, 0x56, 0x32, 0x86, 0xa0, 0x2b, 0x7c, 0x49 \ + } + #endif ++ +Index: DeviceTree/devicetree.inf +=================================================================== +--- DeviceTree/devicetree.inf (revision 64) ++++ DeviceTree/devicetree.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + DevicetreeStrings.uni + devicetree.c + devicetree.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: TelnetMgmt/TelnetMgmt.c +=================================================================== +--- TelnetMgmt/TelnetMgmt.c (revision 64) ++++ TelnetMgmt/TelnetMgmt.c (working copy) +@@ -32,7 +32,7 @@ + // + #include STRING_DEFINES_FILE + +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiTelnetMgmtGuid = EFI_TELNETMGMT_GUID; + EFI_GUID mEfiTelnetServerGuid = EFI_TELNET_SERVER_PROTOCOL_GUID; + SHELL_VAR_CHECK_ITEM TelnetmgmtCheckList[] = { +@@ -58,7 +58,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: TelnetMgmt/TelnetMgmt.h +=================================================================== +--- TelnetMgmt/TelnetMgmt.h (revision 64) ++++ TelnetMgmt/TelnetMgmt.h (working copy) +@@ -29,4 +29,4 @@ + 0x55d41b9a, 0x954d, 0x4fbb, 0x8d, 0x6d, 0x24, 0x75, 0xf5, 0x30, 0x9d, 0x37 \ + } + +-#endif +\ No newline at end of file ++#endif +Index: TelnetMgmt/TelnetServer.h +=================================================================== +--- TelnetMgmt/TelnetServer.h (revision 64) ++++ TelnetMgmt/TelnetServer.h (working copy) +@@ -81,3 +81,4 @@ + extern EFI_GUID gEfiTelnetServerGuid; + + #endif ++ +Index: TelnetMgmt/TelnetMgmt.inf +=================================================================== +--- TelnetMgmt/TelnetMgmt.inf (revision 64) ++++ TelnetMgmt/TelnetMgmt.inf (working copy) +@@ -25,23 +25,23 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + TelnetMgmtStrings.uni + TelnetMgmt.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: shellenv/if.c +=================================================================== +--- shellenv/if.c (revision 64) ++++ shellenv/if.c (working copy) +@@ -59,7 +59,6 @@ + BOOLEAN ExistNot; + UINTN NotPos; + BOOLEAN ExistI; +- UINTN IPos; + EFI_STATUS Status; + CHAR16 *FileName; + BOOLEAN FileExists; +@@ -122,10 +121,8 @@ + // + if ((StriCmp (SI->Argv[1], L"/i") == 0)) { + ExistI = TRUE; +- IPos = 1; + } else { + ExistI = FALSE; +- IPos = 0; + } + + NotPos = ExistI ? 2 : 1; +Index: shellenv/init.c +=================================================================== +--- shellenv/init.c (revision 64) ++++ shellenv/init.c (working copy) +@@ -143,7 +143,7 @@ + Status = BS->HandleProtocol ( + mOldSEnv->Handle, + &ShellEnvProtocol, +- &(mOldSEnv->Interface) ++ (VOID**)&(mOldSEnv->Interface) + ); + ASSERT (!EFI_ERROR (Status)); + Status = BS->ReinstallProtocolInterface ( +Index: shellenv/echo.c +=================================================================== +--- shellenv/echo.c (revision 64) ++++ shellenv/echo.c (working copy) +@@ -52,7 +52,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: shellenv/shelle.h +=================================================================== +--- shellenv/shelle.h (revision 64) ++++ shellenv/shelle.h (working copy) +@@ -2074,3 +2074,4 @@ + ); + + #endif // _SHELLE_H_ ++ +Index: shellenv/batch.c +=================================================================== +--- shellenv/batch.c (revision 64) ++++ shellenv/batch.c (working copy) +@@ -2388,7 +2388,6 @@ + + --*/ + { +- BOOLEAN EndOfFile; + EFI_STATUS Status; + UINTN BufSize; + CHAR16 *CommandLine; +@@ -2396,7 +2395,6 @@ + EFI_BATCH_STATEMENT *Stmt; + ENV_SHELL_INTERFACE NewShell; + UINTN GotoTargetStatus; +- UINTN SkippedIfCount; + BOOLEAN EchoStateValid; + BOOLEAN EchoState; + EFI_STATUS ExecuteResult; +@@ -2409,7 +2407,6 @@ + // Initialize + // + Status = EFI_SUCCESS; +- EndOfFile = FALSE; + BufSize = 0; + EchoStateValid = FALSE; + EchoState = FALSE; +@@ -2468,14 +2465,6 @@ + EFI_BATCH_SCRIPT_SIGNATURE + ); + +- // +- // Iterate through the file, reading a line at a time and executing each +- // line as a shell command. Nested shell scripts will come through +- // this code path recursively. +- // +- EndOfFile = FALSE; +- SkippedIfCount = 0; +- + while (1) { + // + // Read a command line from the file +@@ -2681,7 +2670,7 @@ + LastError = ExecuteResult; + } + +- if (ExecuteResult == -1) { ++ if (ExecuteResult == (EFI_STATUS) -1) { + SE2->DecrementShellNestingLevel (); + if (SE2->IsRootShell ()) { + goto Done; +@@ -2774,7 +2763,7 @@ + Status = _ResumePreviousMode (); + } + +- if (LastError == -1) { ++ if (LastError == (UINTN) -1) { + return LastError; + } else { + return Status; +Index: shellenv/dprot.c +=================================================================== +--- shellenv/dprot.c (revision 64) ++++ shellenv/dprot.c (working copy) +@@ -23,7 +23,7 @@ + + #include "shelle.h" + #include "shellenvguid.h" +-#include "acpi.h" ++#include "Acpi.h" + + STATIC CHAR16 *SEnvDP_IlleagalStr[] = { L"Illegal" }; + +@@ -328,7 +328,6 @@ + I2O_DEVICE_PATH *I2ODevicePath; + MAC_ADDR_DEVICE_PATH *MacAddrDevicePath; + IPv4_DEVICE_PATH *IPv4DevicePath; +- IPv6_DEVICE_PATH *IPv6DevicePath; + INFINIBAND_DEVICE_PATH *InfinibandDevicePath; + UART_DEVICE_PATH *UartDevicePath; + VENDOR_DEVICE_PATH *VendorDevicePath; +@@ -464,7 +463,6 @@ + break; + + case MSG_IPv6_DP: +- IPv6DevicePath = (IPv6_DEVICE_PATH *) DevicePath; + PrintToken (STRING_TOKEN (STR_SHELLENV_DPROT_NOT_AVAIL), HiiEnvHandle); + break; + +@@ -1054,6 +1052,8 @@ + Magic = EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC; + } else if (NtHdr->FileHeader.Machine == EFI_IMAGE_MACHINE_X64) { + Magic = EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC; ++ } else if (NtHdr->FileHeader.Machine == EFI_IMAGE_MACHINE_AARCH64) { ++ Magic = EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC; + } else { + Magic = NtHdr->OptionalHeader.Magic; + } +@@ -1294,6 +1294,8 @@ + case EfiIsaAcpiResourceInterrupt: + PrintToken (STRING_TOKEN (STR_SHELLENV_DPROT_INT), HiiEnvHandle); + break; ++ case EfiIsaAcpiResourceEndOfList: ++ return; + } + + if (IsaIo->ResourceList->ResourceItem[Index].StartRange == IsaIo->ResourceList->ResourceItem[Index].EndRange) { +Index: shellenv/Connect.c +=================================================================== +--- shellenv/Connect.c (revision 64) ++++ shellenv/Connect.c (working copy) +@@ -51,7 +51,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -78,7 +78,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -105,7 +105,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -333,7 +333,7 @@ + Status = BS->HandleProtocol ( + HandleBuffer[0], + &gEfiDevicePathProtocolGuid, +- &Instance ++ (VOID**)&Instance + ); + if (EFI_ERROR (Status)) { + DriverBindingHandleCount = 1; +@@ -349,7 +349,7 @@ + Status = BS->HandleProtocol ( + HandleBuffer[0], + &gEfiDevicePathProtocolGuid, +- &Instance ++ (VOID**)&Instance + ); + if (EFI_ERROR (Status)) { + PrintToken ( +@@ -368,7 +368,7 @@ + Status = BS->HandleProtocol ( + HandleBuffer[1], + &gEfiDriverBindingProtocolGuid, +- &Instance ++ (VOID**)&Instance + ); + if (EFI_ERROR (Status)) { + PrintToken ( +@@ -407,7 +407,7 @@ + Status = BS->HandleProtocol ( + AllHandleBuffer[Index], + &gEfiDriverBindingProtocolGuid, +- &Instance ++ (VOID**)&Instance + ); + if (EFI_ERROR (Status)) { + DeviceHandleBuffer[DeviceHandleCount++] = AllHandleBuffer[Index]; +@@ -1052,7 +1052,7 @@ + Status = BS->HandleProtocol ( + *ConsoleHandle, + ConsoleGuid, +- &Interface ++ (VOID**)&Interface + ); + } + +@@ -1079,7 +1079,7 @@ + Status = BS->HandleProtocol ( + AllHandleBuffer[Index], + &gEfiDevicePathProtocolGuid, +- &Interface ++ (VOID**)&Interface + ); + if (!EFI_ERROR (Status)) { + ConsoleIndex = Index; +@@ -1095,7 +1095,7 @@ + BS->HandleProtocol ( + *ConsoleHandle, + ConsoleGuid, +- ConsoleInterface ++ (VOID**)ConsoleInterface + ); + } + +Index: shellenv/shellenvguid.h +=================================================================== +--- shellenv/shellenvguid.h (revision 64) ++++ shellenv/shellenvguid.h (working copy) +@@ -37,3 +37,4 @@ + extern EFI_HII_HANDLE HiiEnvHandle; + + #endif ++ +Index: shellenv/protid.c +=================================================================== +--- shellenv/protid.c (revision 64) ++++ shellenv/protid.c (working copy) +@@ -628,7 +628,7 @@ + NULL, + 0, + 0, +- FALSE ++ (SHELL_VAR_CHECK_FLAG_TYPE) FALSE + } + }; + +@@ -1183,7 +1183,7 @@ + *DriverName = LibDevicePathToStr (Image->FilePath); + } + } else { +- LibGetDriverName (DriverBindingHandle, Language, DriverName); ++ LibGetDriverName (DriverBindingHandle, (CHAR8*)Language, DriverName); + } + + return EFI_SUCCESS; +@@ -1539,7 +1539,7 @@ + + DevicePath = NULL; + BestDeviceName = NULL; +- Status = BS->HandleProtocol (Handle, &gEfiDevicePathProtocolGuid, &DevicePath); ++ Status = BS->HandleProtocol (Handle, &gEfiDevicePathProtocolGuid, (VOID**)&DevicePath); + + Print (L"\n"); + PrintToken (STRING_TOKEN (STR_SHELLENV_PROTID_CONTROLLER_NAME), HiiEnvHandle); +@@ -1598,14 +1598,14 @@ + Image = FALSE; + Status = GetDriverName ( + DriverBindingHandleBuffer[Index], +- Language, ++ (UINT8*)Language, + FALSE, + &DriverName + ); + if (DriverName == NULL) { + Status = GetDriverName ( + DriverBindingHandleBuffer[Index], +- Language, ++ (UINT8*)Language, + TRUE, + &DriverName + ); +@@ -1792,7 +1792,7 @@ + + Status = GetDriverName ( + Handle, +- Language, ++ (UINT8*)Language, + FALSE, + &DriverName + ); +@@ -1806,7 +1806,7 @@ + + Status = GetDriverName ( + Handle, +- Language, ++ (UINT8*)Language, + TRUE, + &DriverName + ); +@@ -1979,7 +1979,7 @@ + + if (Prot->Handles[Index] == Handle) { + Dump = Verbose ? Prot->DumpInfo : Prot->DumpToken; +- Status = BS->HandleProtocol (Handle, &Prot->ProtocolId, &Interface); ++ Status = BS->HandleProtocol (Handle, &Prot->ProtocolId, (VOID**)&Interface); + if (!EFI_ERROR (Status)) { + if (Verbose) { + for (Index1 = 0; Index1 < ProtocolBufferCount; Index1++) { +@@ -2027,7 +2027,7 @@ + goto Done; + } + +- Status = BS->HandleProtocol (Handle, ProtocolBuffer[Index1], &Interface); ++ Status = BS->HandleProtocol (Handle, ProtocolBuffer[Index1], (VOID**)&Interface); + if (!EFI_ERROR (Status)) { + PrintToken ( + STRING_TOKEN (STR_SHELLENV_PROTID_TWO_VARS_HG_NEW), +@@ -2660,8 +2660,6 @@ + + --*/ + { +- EFI_STATUS Status; +- + DEVICEPATH_INFO *DevicePathInfo; + + UINTN Index; +@@ -2688,7 +2686,7 @@ + // + // Establish current device path info list + // +- Status = LibLocateHandle ( ++ LibLocateHandle ( + ByProtocol, + Protocol, + NULL, +Index: shellenv/parsecmd.h +=================================================================== +--- shellenv/parsecmd.h (revision 64) ++++ shellenv/parsecmd.h (working copy) +@@ -103,4 +103,5 @@ + IN OUT SHELL_PARSED_ARGS *args + ); + +-#endif +\ No newline at end of file ++#endif ++ +Index: shellenv/ConsoleProxy.c +=================================================================== +--- shellenv/ConsoleProxy.c (revision 64) ++++ shellenv/ConsoleProxy.c (working copy) +@@ -1483,7 +1483,7 @@ + + if (!EFI_ERROR (TimerStatus)) { + mConInProxy.InputState = INPUT_STATE_DEFAULT; +- BS->SetTimer ( ++ Status = BS->SetTimer ( + mConInProxy.TwoSecondTimeOut, + TimerCancel, + 0 +@@ -1496,9 +1496,11 @@ + (UINT64) 20000000 + ); + mConInProxy.InputState = INPUT_STATE_ESC; ++ } else { ++ Status = EFI_UNSUPPORTED; + } + +- return EFI_SUCCESS; ++ return Status; + } + + EFI_STATUS +Index: shellenv/conio.c +=================================================================== +--- shellenv/conio.c (revision 64) ++++ shellenv/conio.c (working copy) +@@ -889,7 +889,7 @@ + // + // If we need to update the output do so now + // +- if (Update != -1) { ++ if (Update != (UINTN) -1) { + if ((ConOut->Mode->CursorColumn != (INT32) Column) || (ConOut->Mode->CursorRow != (INT32) Row)) { + PrintAt (Column, Row, L"%s%.*s", Str + Update, Delete, L""); + } else { +Index: shellenv/map.c +=================================================================== +--- shellenv/map.c (revision 64) ++++ shellenv/map.c (working copy) +@@ -185,7 +185,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -206,7 +206,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -2038,13 +2038,13 @@ + goto Done; + } + +- Status = BS->HandleProtocol (Handle, &gEfiBlockIoProtocolGuid, &BlockIo); ++ Status = BS->HandleProtocol (Handle, &gEfiBlockIoProtocolGuid, (VOID**)&BlockIo); + // + // This is just for NT32, because fsntx has no block io protocol installed + // but fsntx has installed simple file system protocol + // + if (EFI_ERROR (Status)) { +- Status = BS->HandleProtocol (Handle, &gEfiSimpleFileSystemProtocolGuid, &BlockIo); ++ Status = BS->HandleProtocol (Handle, &gEfiSimpleFileSystemProtocolGuid, (VOID**)&BlockIo); + } + + if (EFI_ERROR (Status)) { +@@ -2630,7 +2630,6 @@ + UINTN Index; + UINTN HandleNo; + BOOLEAN EchoStatus; +- BOOLEAN Same; + CHAR16 MapStr[8]; + EFI_LIST_ENTRY *Link; + EFI_LIST_ENTRY *Head; +@@ -2729,11 +2728,6 @@ + } + } + } +- // +- // New code, try to make mapping list sequence unchanged if current device +- // paths and original device paths are the same +- // +- Same = FALSE; + + // + // Load handle table and handle protocol info so that we can get +@@ -3410,4 +3404,4 @@ + FreePool (HistoryNode->DevicePath); + FreePool (HistoryNode); + } +-} +\ No newline at end of file ++} +Index: shellenv/pause.c +=================================================================== +--- shellenv/pause.c (revision 64) ++++ shellenv/pause.c (working copy) +@@ -47,7 +47,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: shellenv/exec.c +=================================================================== +--- shellenv/exec.c (revision 64) ++++ shellenv/exec.c (working copy) +@@ -105,7 +105,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -126,7 +126,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -1270,7 +1270,6 @@ + SHELLENV_INTERNAL_COMMAND InternalCommand; + EFI_HANDLE NewImage; + EFI_FILE_HANDLE Script; +- BOOLEAN ShowHelp; + BOOLEAN ConsoleContextSaved; + EFI_HANDLE SavedConsoleInHandle; + EFI_HANDLE SavedConsoleOutHandle; +@@ -1292,7 +1291,6 @@ + // + Status = EFI_SUCCESS; + ParentShell = NULL; +- ShowHelp = FALSE; + ConsoleContextSaved = FALSE; + SavedConIn = NULL; + SavedConOut = NULL; +@@ -1557,7 +1555,7 @@ + ); + + EFI_SHELL_APP_INIT (ParentImageHandle, ParentSystemTable); +- if (-2 == Status) { ++ if ((EFI_STATUS) -2 == Status) { + // + // if status = -2 we assume that a nested shell has just exited. + // +@@ -1613,7 +1611,9 @@ + Done: + DEBUG_CODE ( + if (EFI_ERROR (Status) && Output) { +- if ((Status == -1) || (Status == -2) || (Status == EFI_REDIRECTION_NOT_ALLOWED) ++ if ((Status == (EFI_STATUS) -1) ++ || (Status == (EFI_STATUS) -2) ++ || (Status == EFI_REDIRECTION_NOT_ALLOWED) + || (Status == EFI_REDIRECTION_SAME)) { + } else { + PrintToken (STRING_TOKEN (STR_SHELLENV_EXEC_EXIT_STATUS_CODE), HiiEnvHandle, Status); +@@ -1674,7 +1674,7 @@ + PrintToken (STRING_TOKEN (STR_SHELLENV_REDIR_NOT_ALLOWED), HiiEnvHandle); + } + +- if (Status != -1) { ++ if (Status != (EFI_STATUS) -1) { + // + // Don't Print on a "Disconnect All" exit. The ConOut device may not exist + // +@@ -1872,7 +1872,7 @@ + return Status; + } + // +- // Processing foo: or foo:\ ++ // Processing foo:\ or foo: + // + if (PathPos != -1 && Ptr1 == NULL) { + return Status; +@@ -2638,7 +2638,6 @@ + EFI_STATUS Status; + CHAR16 *Alias; + CHAR16 *SubstituteStr; +- CHAR16 *OldSubstituteStr; + BOOLEAN Literal; + BOOLEAN Comment; + BOOLEAN IsVariable; +@@ -2735,7 +2734,6 @@ + // Try to find a shell enviroment variable + // + QuoteCount = 0; +- OldSubstituteStr = SubstituteStr; + SubstituteStr = Str + 1; + while (*SubstituteStr != '%' && *SubstituteStr != 0 && (!IsWhiteSpace (*SubstituteStr) || ParseState->Quote)) { + if (*SubstituteStr == '"') { +Index: shellenv/for.c +=================================================================== +--- shellenv/for.c (revision 64) ++++ shellenv/for.c (working copy) +@@ -24,7 +24,7 @@ + #include "shelle.h" + #include "shellenvguid.h" + +-/* ++#if 0 + BOOLEAN + CheckInterValue ( + IN CHAR16 *wszValueStr, +@@ -190,7 +190,7 @@ + Returns: + EFI_SUCCESS The function finished sucessfully + +--- ++--*/ + { + EFI_BATCH_STATEMENT *Stmt; + EFI_LIST_ENTRY FileList; +@@ -326,7 +326,8 @@ + + return Status; + } +-*/ ++#endif ++ + EFI_STATUS + SEnvCmdForRun ( + IN EFI_HANDLE hImageHandle, +Index: shellenv/help.c +=================================================================== +--- shellenv/help.c (revision 64) ++++ shellenv/help.c (working copy) +@@ -52,7 +52,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: shellenv/var.c +=================================================================== +--- shellenv/var.c (revision 64) ++++ shellenv/var.c (working copy) +@@ -110,7 +110,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -144,7 +144,6 @@ + EFI_LIST_ENTRY *ListHead; + VARIABLE_ID *Var; + EFI_STATUS Status; +- BOOLEAN IsString; + UINT32 Attributes; + + // +@@ -175,15 +174,12 @@ + // See if it's a shellenv variable + // + ListHead = NULL; +- IsString = FALSE; + if (CompareGuid (&Id, &SEnvEnvId) == 0) { + ListHead = &SEnvEnv; +- IsString = TRUE; + } + + if (CompareGuid (&Id, &SEnvAliasId) == 0) { + ListHead = &SEnvAlias; +- IsString = TRUE; + } + + if (ListHead) { +Index: reset/reset.c +=================================================================== +--- reset/reset.c (revision 64) ++++ reset/reset.c (working copy) +@@ -61,7 +61,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: reset/reset.h +=================================================================== +--- reset/reset.h (revision 64) ++++ reset/reset.h (working copy) +@@ -32,3 +32,4 @@ + } + + #endif ++ +Index: reset/reset.inf +=================================================================== +--- reset/reset.inf (revision 64) ++++ reset/reset.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + ResetStrings.uni + Reset.c + Reset.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: touch/touch.c +=================================================================== +--- touch/touch.c (revision 64) ++++ touch/touch.c (working copy) +@@ -64,7 +64,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiTouchGuid = EFI_TOUCH_GUID; + SHELL_VAR_CHECK_ITEM TouchCheckList[] = { + { +Index: touch/touch.h +=================================================================== +--- touch/touch.h (revision 64) ++++ touch/touch.h (working copy) +@@ -29,4 +29,4 @@ + 0xa16a4695, 0x5815, 0x4d4f, 0xb8, 0xe, 0x6a, 0xf, 0x88, 0xac, 0xdb, 0x6c \ + } + +-#endif +\ No newline at end of file ++#endif +Index: touch/touch.inf +=================================================================== +--- touch/touch.inf (revision 64) ++++ touch/touch.inf (working copy) +@@ -39,23 +39,23 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + TouchStrings.uni + touch.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: Shell.inf +=================================================================== +--- Shell.inf (revision 64) ++++ Shell.inf (working copy) +@@ -25,179 +25,189 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- Library\ShellDebug.c +- Library\DPath.c +- Library\Init.c +- Library\Lock.c +- Library\Str.c +- Library\IO.c +- Library\Mem.c +- Library\Misc.c +- Library\Data.c +- Library\RtData.c +- Library\ShellEnvInt.c +- Library\Handle.c +- Library\FileIO.c +- Library\ConsistMapping.c +- Library\CRC.c +- Library\Event.c +- Library\Perf.c +- Library\VarCheck.c +- Library\HiiSupport.c ++ Library/ShellDebug.c ++ Library/DPath.c ++ Library/Init.c ++ Library/Lock.c ++ Library/Str.c ++ Library/IO.c ++ Library/Mem.c ++ Library/Misc.c ++ Library/Data.c ++ Library/RtData.c ++ Library/ShellEnvInt.c ++ Library/Handle.c ++ Library/FileIO.c ++ Library/ConsistMapping.c ++ Library/CRC.c ++ Library/Event.c ++ Library/Perf.c ++ Library/VarCheck.c ++ Library/HiiSupport.c + +- newshell\NshellStrings.uni +- newshell\init.c +- newshell\nshell.h +- newshell\fakehii.c ++ newshell/NshellStrings.uni ++ newshell/init.c ++ newshell/nshell.h ++ newshell/fakehii.c + + ShCommonStrings.uni +- shellenv\ShellenvHelpStrings.uni +- shellenv\ShellenvStrings.uni +- shellenv\ScriptCmdStrings.uni +- shellenv\ConnectStrings.uni +- shellenv\EchoStrings.uni +- shellenv\HelpStrings.uni +- shellenv\MapStrings.uni +- shellenv\CdStrings.uni +- shellenv\DhStrings.uni ++ shellenv/ShellenvHelpStrings.uni ++ shellenv/ShellenvStrings.uni ++ shellenv/ScriptCmdStrings.uni ++ shellenv/ConnectStrings.uni ++ shellenv/EchoStrings.uni ++ shellenv/HelpStrings.uni ++ shellenv/MapStrings.uni ++ shellenv/CdStrings.uni ++ shellenv/DhStrings.uni + +- shellenv\cmddisp.c +- shellenv\connect.c +- shellenv\data.c +- shellenv\exec.c +- shellenv\init.c +- shellenv\protid.c +- shellenv\var.c +- shellenv\conio.c +- shellenv\consoleproxy.c +- shellenv\handle.c +- shellenv\dprot.c +- shellenv\map.c +- shellenv\marg.c +- shellenv\batch.c +- shellenv\if.c +- shellenv\goto.c +- shellenv\echo.c +- shellenv\pause.c +- shellenv\for.c +- shellenv\wait.c +- shellenv\help.c +- shellenv\shelle.h +- shellenv\shellenvguid.h +- shellenv\parsecmd.c +- shellenv\shift.c ++ shellenv/cmddisp.c ++ shellenv/connect.c ++ shellenv/data.c ++ shellenv/exec.c ++ shellenv/init.c ++ shellenv/protid.c ++ shellenv/var.c ++ shellenv/conio.c ++ shellenv/consoleproxy.c ++ shellenv/handle.c ++ shellenv/dprot.c ++ shellenv/map.c ++ shellenv/marg.c ++ shellenv/batch.c ++ shellenv/if.c ++ shellenv/goto.c ++ shellenv/echo.c ++ shellenv/pause.c ++ shellenv/for.c ++ shellenv/wait.c ++ shellenv/help.c ++ shellenv/shelle.h ++ shellenv/shellenvguid.h ++ shellenv/parsecmd.c ++ shellenv/shift.c + +- unload\UnloadStrings.uni +- unload\unload.c ++ unload/UnloadStrings.uni ++ unload/unload.c + +- attrib\AttribStrings.uni +- attrib\attrib.c +- attrib\attrib.h ++ attrib/AttribStrings.uni ++ attrib/attrib.c ++ attrib/attrib.h + +- cls\clsstrings.uni +- cls\cls.c ++ cls/clsstrings.uni ++ cls/cls.c + +- cp\CpStrings.uni +- cp\cp.h +- cp\cp.c ++ cp/CpStrings.uni ++ cp/cp.h ++ cp/cp.c + +- date\DateStrings.uni +- date\date.c +- date\date.h ++ date/DateStrings.uni ++ date/date.c ++ date/date.h + +- load\LoadStrings.uni +- load\load.c +- load\load.h ++ load/LoadStrings.uni ++ load/load.c ++ load/load.h + +- ls\LsStrings.uni +- ls\ls.h +- ls\ls.c ++ ls/LsStrings.uni ++ ls/ls.h ++ ls/ls.c + +- mkdir\MkdirStrings.uni +- mkdir\mkdir.c +- mkdir\mkdir.h ++ mkdir/MkdirStrings.uni ++ mkdir/mkdir.c ++ mkdir/mkdir.h + +- mv\MvStrings.uni +- mv\mv.c +- mv\mv.h ++ mv/MvStrings.uni ++ mv/mv.c ++ mv/mv.h + +- reset\ResetStrings.uni +- reset\reset.c +- reset\reset.h ++ reset/ResetStrings.uni ++ reset/reset.c ++ reset/reset.h + +- rm\RmStrings.uni +- rm\rm.h +- rm\rm.c ++ rm/RmStrings.uni ++ rm/rm.h ++ rm/rm.c + +- type\TypeStrings.uni +- type\type.c +- type\type.h +- time\TimeStrings.uni +- time\time.c +- time\time.h ++ type/TypeStrings.uni ++ type/type.c ++ type/type.h ++ time/TimeStrings.uni ++ time/time.c ++ time/time.h + +- touch\TouchStrings.uni +- touch\touch.c +- touch\touch.h ++ touch/TouchStrings.uni ++ touch/touch.c ++ touch/touch.h + +- vol\VolStrings.uni +- vol\vol.c +- vol\vol.h ++ vol/VolStrings.uni ++ vol/vol.c ++ vol/vol.h + +- ver\VerStrings.uni +- ver\ver.c +- ver\ver.h ++ ver/VerStrings.uni ++ ver/ver.c ++ ver/ver.h + +- drivers\driversStrings.uni +- drivers\drivers.c +- drivers\drivers.h ++ drivers/driversStrings.uni ++ drivers/drivers.c ++ drivers/drivers.h + +- drvcfg\DrvcfgStrings.uni +- drvcfg\drvcfg.c +- drvcfg\drvcfg.h ++ drvcfg/DrvcfgStrings.uni ++ drvcfg/drvcfg.c ++ drvcfg/drvcfg.h + +- drvdiag\DrvdiagStrings.uni +- drvdiag\drvdiag.c +- drvdiag\drvdiag.h ++ drvdiag/DrvdiagStrings.uni ++ drvdiag/drvdiag.c ++ drvdiag/drvdiag.h + + + + [sources.ia32] +- ver\ia32\ver32.c +- Library\ia32\math.c +- Library\ia32\initplat.c ++ ver/IA32/ver32.c ++ Library/IA32/math.c ++ Library/IA32/initplat.c + + + [sources.ipf] +- ver\ipf\ver64.c +- Library\ipf\math.c +- Library\ipf\initplat.c +- Library\ipf\palproc.s +- Library\ipf\salpal.c ++ ver/IPF/ver64.c ++ Library/IPF/math.c ++ Library/IPF/initplat.c ++ Library/IPF/palproc.s ++ Library/IPF/salpal.c + + [sources.EBC] +- ver\ebc\verEbc.c +- Library\EBC\math.c +- Library\EBC\initplat.c ++ ver/ebc/verEbc.c ++ Library/Ebc/math.c ++ Library/Ebc/initplat.c + + [sources.x64] +- ver\ia32\ver32.c +- Library\ipf\math.c +- Library\ia32\initplat.c ++ ver/IA32/ver32.c ++ Library/IPF/math.c ++ Library/IA32/initplat.c + ++[sources.ARM] ++ ver/ia32/ver32.c ++ Library/IPF/math.c ++ Library/IA32/initplat.c ++ ++[sources.AARCH64] ++ ver/ia32/ver32.c ++ Library/IPF/math.c ++ Library/IA32/initplat.c ++ + [includes.common] + . +- .\Inc +- .\ver +- .\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe ++ ./Inc ++ ./ver ++ ./Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe + $(DEST_DIR) + + [libraries.common] +@@ -229,4 +239,4 @@ + + + +- +\ No newline at end of file ++ +Index: IfConfig/IfConfig.inf +=================================================================== +--- IfConfig/IfConfig.inf (revision 64) ++++ IfConfig/IfConfig.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + IfConfigStrings.uni + IfConfig.c + IfConfig.h +@@ -33,25 +33,24 @@ + ShellNetHelper.h + + [includes.common] +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(EDK_SOURCE)\Foundation\Library\Dxe\Include +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(EDK_SOURCE)/Foundation/Library/Dxe/Include ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib + EdkProtocolLib + EfiProtocolLib + EdkGuidLib +- EfiDriverLib + + [nmake.common] + C_PROJ_FLAGS = $(C_PROJ_FLAGS) +Index: IfConfig/ShellNetHelper.h +=================================================================== +--- IfConfig/ShellNetHelper.h (revision 64) ++++ IfConfig/ShellNetHelper.h (working copy) +@@ -87,3 +87,4 @@ + IN EFI_HANDLE ChildHandle + ); + #endif ++ +Index: IfConfig/IfConfig.c +=================================================================== +--- IfConfig/IfConfig.c (revision 64) ++++ IfConfig/IfConfig.c (working copy) +@@ -29,7 +29,7 @@ + // + #define NIC_ITEM_CONFIG_SIZE sizeof (NIC_IP4_CONFIG_INFO) + sizeof (EFI_IP4_ROUTE_TABLE) * 16 + +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + + EFI_GUID EfiIfConfigGuid = EFI_IFCONFIG_GUID; + +@@ -75,7 +75,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -669,7 +669,7 @@ + Status = BS->LocateProtocol ( + &gEfiHiiConfigRoutingProtocolGuid, + NULL, +- &mHiiConfigRouting ++ (VOID**)&mHiiConfigRouting + ); + if (EFI_ERROR (Status)) { + return EFI_NOT_FOUND; +Index: IfConfig/IfConfig.h +=================================================================== +--- IfConfig/IfConfig.h (revision 64) ++++ IfConfig/IfConfig.h (working copy) +@@ -60,3 +60,4 @@ + } ARP_REQUEST; + + #endif ++ +Index: edit/libStatusBar.c +=================================================================== +--- edit/libStatusBar.c (revision 64) ++++ edit/libStatusBar.c (working copy) +@@ -157,11 +157,15 @@ + // back up the screen attributes + // + Orig = MainEditor.ColorAttributes; ++ New.Data = 0; + New.Colors.Foreground = Orig.Colors.Background; + New.Colors.Background = Orig.Colors.Foreground; + + Out->EnableCursor (Out, FALSE); +- Out->SetAttribute (Out, New.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (New.Colors.Foreground, New.Colors.Background) ++ ); + + // + // clear status bar +@@ -191,7 +195,10 @@ + // + // restore the old screen attributes + // +- Out->SetAttribute (Out, Orig.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (Orig.Colors.Foreground, Orig.Colors.Background) ++ ); + + // + // restore position in edit area +Index: edit/libFileBuffer.c +=================================================================== +--- edit/libFileBuffer.c (revision 64) ++++ edit/libFileBuffer.c (working copy) +@@ -196,8 +196,9 @@ + // backup the old screen attributes + // + Orig = MainEditor.ColorAttributes; +- New.Colors.Foreground = Orig.Colors.Background; +- New.Colors.Background = Orig.Colors.Foreground; ++ New.Data = 0; ++ New.Colors.Foreground = Orig.Colors.Foreground; ++ New.Colors.Background = Orig.Colors.Background; + + // + // clear the old mouse position +@@ -235,10 +236,14 @@ + Value + ); + } ++ + // + // set the new mouse position + // +- Out->SetAttribute (Out, New.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (New.Colors.Background, New.Colors.Foreground) ++ ); + + // + // clear the old mouse position +@@ -278,7 +283,10 @@ + // + // end of HasCharacter + // +- Out->SetAttribute (Out, Orig.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (Orig.Colors.Foreground, Orig.Colors.Background) ++ ); + } + // + // end of MouseNeedRefresh +@@ -768,7 +776,7 @@ + Handle = NULL; + FileSize = 0; + UnicodeBuffer = NULL; +- Type = 0; ++ Type = DEFAULT_TYPE; + + // + // in this function, when you return error ( except EFI_OUT_OF_RESOURCES ) +@@ -2624,15 +2632,9 @@ + VOID + ) + { +- EFI_EDITOR_LINE *Line; + UINTN FRow; + UINTN FCol; + +- // +- // go to the first column of the line +- // +- Line = FileBuffer.CurrentLine; +- + FRow = FileBuffer.FilePosition.Row; + FCol = 1; + +Index: edit/libtitlebar.h +=================================================================== +--- edit/libtitlebar.h (revision 64) ++++ edit/libtitlebar.h (working copy) +@@ -46,3 +46,4 @@ + ); + + #endif ++ +Index: edit/libstatusbar.h +=================================================================== +--- edit/libstatusbar.h (revision 64) ++++ edit/libstatusbar.h (working copy) +@@ -53,3 +53,4 @@ + ); + + #endif ++ +Index: edit/libfilebuffer.h +=================================================================== +--- edit/libfilebuffer.h (revision 64) ++++ edit/libfilebuffer.h (working copy) +@@ -209,3 +209,4 @@ + ); + + #endif ++ +Index: edit/libInputBar.c +=================================================================== +--- edit/libInputBar.c (revision 64) ++++ edit/libInputBar.c (working copy) +@@ -141,8 +141,6 @@ + UINTN Size; + EFI_STATUS Status; + BOOLEAN NoDisplay; +- UINTN Limit; +- UINTN PromptLen; + + // + // variable initialization +@@ -162,10 +160,14 @@ + // back up the old screen attributes + // + Orig = MainEditor.ColorAttributes; ++ New.Data = 0; + New.Colors.Foreground = Orig.Colors.Background; + New.Colors.Background = Orig.Colors.Foreground; + +- Out->SetAttribute (Out, New.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (New.Colors.Foreground, New.Colors.Background) ++ ); + + // + // clear input bar +@@ -173,22 +175,19 @@ + EditorClearLine (INPUT_BAR_LOCATION); + + Out->SetCursorPosition (Out, 0, INPUT_BAR_LOCATION - 1); +- PrintToken (STRING_TOKEN (STR_EDIT_LIBINPUTBAR_MAININPUTBAR), HiiHandle, MainInputBar.Prompt); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBINPUTBAR_MAININPUTBAR), gEditHiiHandle, MainInputBar.Prompt); + + // +- // that's the maximum input length that can be displayed on screen +- // +- PromptLen = StrLen (MainInputBar.Prompt); +- Limit = MainEditor.ScreenSize.Column - PromptLen; +- +- // + // this is a selection prompt, cursor will stay in edit area + // actually this is for search , search/replace + // + if (StrStr (MainInputBar.Prompt, L"Yes/No")) { + NoDisplay = TRUE; + FileBufferRestorePosition (); +- Out->SetAttribute (Out, Orig.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (Orig.Colors.Foreground, Orig.Colors.Background) ++ ); + } else { + NoDisplay = FALSE; + } +@@ -265,7 +264,10 @@ + // + // restore screen attributes + // +- Out->SetAttribute (Out, Orig.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (Orig.Colors.Foreground, Orig.Colors.Background) ++ ); + + StatusBarNeedRefresh = TRUE; + +Index: edit/libEditor.c +=================================================================== +--- edit/libEditor.c (revision 64) ++++ edit/libEditor.c (working copy) +@@ -123,7 +123,7 @@ + Status = BS->HandleProtocol ( + In, + &gEfiSimplePointerProtocolGuid, +- &MainEditor.MouseInterface ++ (VOID**)&MainEditor.MouseInterface + ); + if (EFI_ERROR (Status)) { + // +@@ -146,7 +146,7 @@ + Status = BS->HandleProtocol ( + HandleBuffer[Index], + &gEfiSimplePointerProtocolGuid, +- &MainEditor.MouseInterface ++ (VOID**)&MainEditor.MouseInterface + ); + if (!EFI_ERROR (Status)) { + break; +@@ -169,31 +169,31 @@ + // + Status = MainTitleBarInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_TITLEBAR), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_TITLEBAR), gEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = MainMenuBarInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_MAINMENU), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_MAINMENU), gEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = MainStatusBarInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_STATUSBAR), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_STATUSBAR), gEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = MainInputBarInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_INPUTBAR), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_INPUTBAR), gEditHiiHandle); + return EFI_LOAD_ERROR; + } + + Status = FileBufferInit (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_FILEBUFFER), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_FILEBUFFER), gEditHiiHandle); + return EFI_LOAD_ERROR; + } + // +@@ -234,27 +234,27 @@ + // + Status = MainTitleBarCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_TILEBAR_CLEANUP), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_TILEBAR_CLEANUP), gEditHiiHandle); + } + + Status = MainMenuBarCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_MENUBAR_CLEANUP), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_MENUBAR_CLEANUP), gEditHiiHandle); + } + + Status = MainStatusBarCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_STATUSBAR_CLEANUP), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_STATUSBAR_CLEANUP), gEditHiiHandle); + } + + Status = MainInputBarCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_INPUTBAR_CLEANUP), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_INPUTBAR_CLEANUP), gEditHiiHandle); + } + + Status = FileBufferCleanup (); + if (EFI_ERROR (Status)) { +- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_FILEBUFFER_CLEANUP), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_FILEBUFFER_CLEANUP), gEditHiiHandle); + } + // + // restore old mode +Index: edit/edit.inf +=================================================================== +--- edit/edit.inf (revision 64) ++++ edit/edit.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + EditStrings.uni + editor.h + editortype.h +@@ -41,17 +41,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: edit/libMenuBar.c +=================================================================== +--- edit/libMenuBar.c (revision 64) ++++ edit/libMenuBar.c (working copy) +@@ -189,7 +189,6 @@ + CHAR16 *NameString; + CHAR16 *FunctionKeyString; + UINTN BufferSize; +- EFI_STATUS Status; + + // + // variable initialization +@@ -220,9 +219,9 @@ + FunctionKeyString = AllocatePool (BufferSize); + + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) +- Status = Hii->GetString (Hii, HiiHandle, Item->NameToken, FALSE, NULL, &BufferSize, NameString); ++ Hii->GetString (Hii, gEditHiiHandle, Item->NameToken, FALSE, NULL, &BufferSize, NameString); + #else +- Status = LibGetString (HiiHandle, Item->NameToken, NameString, &BufferSize); ++ LibGetString (gEditHiiHandle, Item->NameToken, NameString, &BufferSize); + #endif + + Width = max ((StrLen (NameString) + 6), 20); +@@ -232,9 +231,9 @@ + } + + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) +- Status = Hii->GetString (Hii, HiiHandle, Item->FunctionKeyToken, FALSE, NULL, &BufferSize, FunctionKeyString); ++ Hii->GetString (Hii, gEditHiiHandle, Item->FunctionKeyToken, FALSE, NULL, &BufferSize, FunctionKeyString); + #else +- Status = LibGetString (HiiHandle, Item->FunctionKeyToken, FunctionKeyString, &BufferSize); ++ LibGetString (gEditHiiHandle, Item->FunctionKeyToken, FunctionKeyString, &BufferSize); + #endif + PrintAt (Col - 1, Row - 1, L"%E%s%N %H%s%N ", FunctionKeyString, NameString); + +Index: edit/libinputbar.h +=================================================================== +--- edit/libinputbar.h (revision 64) ++++ edit/libinputbar.h (working copy) +@@ -44,3 +44,4 @@ + ); + + #endif ++ +Index: edit/libeditor.h +=================================================================== +--- edit/libeditor.h (revision 64) ++++ edit/libeditor.h (working copy) +@@ -52,3 +52,4 @@ + ); + + #endif ++ +Index: edit/main.c +=================================================================== +--- edit/main.c (revision 64) ++++ edit/main.c (working copy) +@@ -34,7 +34,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++EFI_HII_HANDLE gEditHiiHandle; + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) + EFI_HII_PROTOCOL *Hii; + #endif +@@ -56,7 +56,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -121,13 +121,13 @@ + // + // There should only be one HII protocol + // +- Status = LibLocateProtocol (&gEfiHiiProtocolGuid, &Hii); ++ Status = LibLocateProtocol (&gEfiHiiProtocolGuid, (VOID**)&Hii); + if (EFI_ERROR (Status) || NULL == Hii) { + return EFI_ABORTED; + } + #endif + +- Status = LibInitializeStrings (&HiiHandle, STRING_ARRAY_NAME, &EfiEditGuid); ++ Status = LibInitializeStrings (&gEditHiiHandle, STRING_ARRAY_NAME, &EfiEditGuid); + + if (EFI_ERROR (Status)) { + return Status; +@@ -137,7 +137,7 @@ + if (VarCheckOk != RetCode) { + switch (RetCode) { + case VarCheckUnknown: +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_UNKNOWN_FLAG), HiiHandle, L"edit", Useful); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_UNKNOWN_FLAG), gEditHiiHandle, L"edit", Useful); + break; + + default: +@@ -161,10 +161,10 @@ + ChkPck.FlagCount > 2 || + (ChkPck.FlagCount == 2 && LibCheckVarGetFlag (&ChkPck, L"-b") == NULL) + ) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), HiiHandle, L"edit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), gEditHiiHandle, L"edit"); + Status = EFI_INVALID_PARAMETER; + } else { +- PrintToken (STRING_TOKEN (STR_EDIT_VERBOSE_HELP), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_VERBOSE_HELP), gEditHiiHandle); + Status = EFI_SUCCESS; + } + +@@ -172,21 +172,21 @@ + } + + if (ChkPck.ValueCount > 1) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), HiiHandle, L"edit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_TOO_MANY), gEditHiiHandle, L"edit"); + Status = EFI_INVALID_PARAMETER; + goto done; + } + + if (ChkPck.ValueCount == 1) { + if (!IsValidFileName (ChkPck.VarList->VarStr)) { +- PrintToken (STRING_TOKEN (STR_EDIT_MAIN_INVALID_FILE_NAME), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_MAIN_INVALID_FILE_NAME), gEditHiiHandle); + Status = EFI_INVALID_PARAMETER; + goto done; + } + } + + if (SI->RedirArgc != 0) { +- PrintToken (STRING_TOKEN (STR_EDIT_NOREDIRECT), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_NOREDIRECT), gEditHiiHandle); + Status = EFI_INVALID_PARAMETER; + goto done; + } +@@ -195,7 +195,7 @@ + if (EFI_ERROR (Status)) { + Out->ClearScreen (Out); + Out->EnableCursor (Out, TRUE); +- PrintToken (STRING_TOKEN (STR_EDIT_MAIN_INIT_FAILED), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_MAIN_INIT_FAILED), gEditHiiHandle); + goto done; + } + +@@ -240,19 +240,19 @@ + // + if (Status == EFI_SUCCESS) { + } else if (Status == EFI_OUT_OF_RESOURCES) { +- PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_OUT_RESOURCE), HiiHandle, L"edit"); ++ PrintToken (STRING_TOKEN (STR_SHELLENV_GNC_OUT_RESOURCE), gEditHiiHandle, L"edit"); + } else { + if (Buffer != NULL) { + if (StrCmp (Buffer, L"") != 0) { + // + // print out the status string + // +- PrintToken (STRING_TOKEN (STR_EDIT_MAIN_BUFFER), HiiHandle, Buffer); ++ PrintToken (STRING_TOKEN (STR_EDIT_MAIN_BUFFER), gEditHiiHandle, Buffer); + } else { +- PrintToken (STRING_TOKEN (STR_EDIT_MAIN_UNKNOWN_EDITOR_ERR), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_MAIN_UNKNOWN_EDITOR_ERR), gEditHiiHandle); + } + } else { +- PrintToken (STRING_TOKEN (STR_EDIT_MAIN_UNKNOWN_EDITOR_ERR), HiiHandle); ++ PrintToken (STRING_TOKEN (STR_EDIT_MAIN_UNKNOWN_EDITOR_ERR), gEditHiiHandle); + } + } + +Index: edit/libmenubar.h +=================================================================== +--- edit/libmenubar.h (revision 64) ++++ edit/libmenubar.h (working copy) +@@ -85,3 +85,4 @@ + ); + + #endif ++ +Index: edit/libMisc.h +=================================================================== +--- edit/libMisc.h (revision 64) ++++ edit/libMisc.h (working copy) +@@ -96,3 +96,4 @@ + ) ; + + #endif ++ +Index: edit/editor.h +=================================================================== +--- edit/editor.h (revision 64) ++++ edit/editor.h (working copy) +@@ -33,7 +33,7 @@ + #include "libstatusbar.h" + #include "libinputbar.h" + #include "libmenubar.h" +-#include "libmisc.h" ++#include "libMisc.h" + // + // This is the generated header file which includes whatever needs to be exported (strings + IFR) + // +@@ -43,9 +43,10 @@ + extern BOOLEAN EditorFirst; + extern BOOLEAN EditorExit; + +-extern EFI_HII_HANDLE HiiHandle; ++extern EFI_HII_HANDLE gEditHiiHandle; + #if (EFI_SPECIFICATION_VERSION < 0x0002000A) + extern EFI_HII_PROTOCOL *Hii; + #endif + + #endif // _EFI_EDITOR_H_ ++ +Index: edit/libTitleBar.c +=================================================================== +--- edit/libTitleBar.c (revision 64) ++++ edit/libTitleBar.c (working copy) +@@ -120,10 +120,15 @@ + // backup the old screen attributes + // + Orig = MainEditor.ColorAttributes; ++ ++ New.Data = 0; + New.Colors.Foreground = Orig.Colors.Background; + New.Colors.Background = Orig.Colors.Foreground; + +- Out->SetAttribute (Out, New.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (New.Colors.Foreground, New.Colors.Background) ++ ); + + // + // clear the old title bar +@@ -142,7 +147,10 @@ + ); + + if (MainEditor.FileBuffer->FileName == NULL) { +- Out->SetAttribute (Out, Orig.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (Orig.Colors.Foreground, Orig.Colors.Background) ++ ); + FileBufferRestorePosition (); + return EFI_SUCCESS; + } +@@ -204,7 +212,10 @@ + // + // restore the old attribute + // +- Out->SetAttribute (Out, Orig.Data); ++ Out->SetAttribute ( ++ Out, ++ EFI_TEXT_ATTR (Orig.Colors.Foreground, Orig.Colors.Background) ++ ); + + // + // restore edit area cursor position +Index: edit/editortype.h +=================================================================== +--- edit/editortype.h (revision 64) ++++ edit/editortype.h (working copy) +@@ -28,7 +28,7 @@ + #define EDITOR_NAME L"EFI Editor\0" + #define EDITOR_VERSION L"0.99\0" + +-#define EFI_EDITOR_LINE_LIST 'eell' ++#define EFI_EDITOR_LINE_LIST EFI_SIGNATURE_32 ('e','e','l','l') + + #define INSERT_MODE_STR L"INS" + #define OVERWR_MODE_STR L"OVR" +@@ -149,8 +149,8 @@ + } EFI_EDITOR_MENU_ITEM; + + typedef struct { +- UINT32 Foreground : 4; +- UINT32 Background : 4; ++ UINT8 Foreground : 4; ++ UINT8 Background : 4; + } EFI_EDITOR_COLOR_ATTRIBUTES; + + typedef union { +@@ -223,3 +223,4 @@ + } EFI_EDITOR_GLOBAL_EDITOR; + + #endif ++ +Index: SmbiosView/EventLogInfo.c +=================================================================== +--- SmbiosView/EventLogInfo.c (revision 64) ++++ SmbiosView/EventLogInfo.c (working copy) +@@ -25,7 +25,7 @@ + #include "PrintInfo.h" + #include "QueryTable.h" + #include "EventLogInfo.h" +-#include "smbios.h" ++#include "Smbios.h" + #include STRING_DEFINES_FILE + + VOID +Index: SmbiosView/Smbios.h +=================================================================== +--- SmbiosView/Smbios.h (revision 64) ++++ SmbiosView/Smbios.h (working copy) +@@ -37,3 +37,4 @@ + + + #endif ++ +Index: SmbiosView/EventLogInfo.h +=================================================================== +--- SmbiosView/EventLogInfo.h (revision 64) ++++ SmbiosView/EventLogInfo.h (working copy) +@@ -85,3 +85,4 @@ + ); + + #endif ++ +Index: SmbiosView/PrintInfo.c +=================================================================== +--- SmbiosView/PrintInfo.c (revision 64) ++++ SmbiosView/PrintInfo.c (working copy) +@@ -26,7 +26,7 @@ + #include "LibSmbiosView.h" + #include "QueryTable.h" + #include "EventLogInfo.h" +-#include "smbios.h" ++#include "Smbios.h" + #include STRING_DEFINES_FILE + + // +Index: SmbiosView/PrintInfo.h +=================================================================== +--- SmbiosView/PrintInfo.h (revision 64) ++++ SmbiosView/PrintInfo.h (working copy) +@@ -199,3 +199,4 @@ + ); + + #endif ++ +Index: SmbiosView/QueryTable.c +=================================================================== +--- SmbiosView/QueryTable.c (revision 64) ++++ SmbiosView/QueryTable.c (working copy) +@@ -23,7 +23,7 @@ + #include "EfiShellLib.h" + #include "QueryTable.h" + #include "PrintInfo.h" +-#include "smbios.h" ++#include "Smbios.h" + + #include STRING_DEFINES_FILE + +Index: SmbiosView/LibSmbiosView.c +=================================================================== +--- SmbiosView/LibSmbiosView.c (revision 64) ++++ SmbiosView/LibSmbiosView.c (working copy) +@@ -22,10 +22,10 @@ + --*/ + + #include "EfiShellLib.h" +-#include "LIbSmbios.h" ++#include "LibSmbios.h" + #include "LibSmbiosView.h" + #include "smbiosview.h" +-#include "smbios.h" ++#include "Smbios.h" + #include STRING_DEFINES_FILE + + STATIC UINT8 mInit = 0; +@@ -62,7 +62,7 @@ + // + // Get SMBIOS table from System Configure table + // +- Status = LibGetSystemConfigurationTable (&gEfiSmbiosTableGuid, &mSmbiosTable); ++ Status = LibGetSystemConfigurationTable (&gEfiSmbiosTableGuid, (VOID**)&mSmbiosTable); + + if (mSmbiosTable == NULL) { + PrintToken (STRING_TOKEN (STR_SMBIOSVIEW_LIBSMBIOSVIEW_CANNOT_GET_TABLE), HiiHandle); +Index: SmbiosView/Smbiosview.inf +=================================================================== +--- SmbiosView/Smbiosview.inf (revision 64) ++++ SmbiosView/Smbiosview.inf (working copy) +@@ -25,7 +25,7 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + SmBiosViewStrings.uni + QueryTable.c + QueryTable.h +@@ -43,19 +43,19 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ +- $(EFI_SOURCE)\Application\Shell\Inc +- $(EFI_SOURCE)\Application\Shell\Library ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ ++ $(EFI_SOURCE)/Applicatio./Shels/Inc ++ $(EFI_SOURCE)/Applicatio./Shels/Library + + [libraries.common] + EfiShellLib +Index: SmbiosView/QueryTable.h +=================================================================== +--- SmbiosView/QueryTable.h (revision 64) ++++ SmbiosView/QueryTable.h (working copy) +@@ -437,3 +437,4 @@ + ); + + #endif ++ +Index: SmbiosView/LibSmbiosView.h +=================================================================== +--- SmbiosView/LibSmbiosView.h (revision 64) ++++ SmbiosView/LibSmbiosView.h (working copy) +@@ -128,3 +128,4 @@ + ); + + #endif ++ +Index: SmbiosView/smbiosview.c +=================================================================== +--- SmbiosView/smbiosview.c (revision 64) ++++ SmbiosView/smbiosview.c (working copy) +@@ -26,7 +26,7 @@ + #include "smbiosview.h" + #include "PrintInfo.h" + #include "QueryTable.h" +-#include "smbios.h" ++#include "Smbios.h" + + extern UINT8 STRING_ARRAY_NAME[]; + +@@ -88,7 +88,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE)0 + } + }; + +Index: SmbiosView/LibSmbios.h +=================================================================== +--- SmbiosView/LibSmbios.h (revision 64) ++++ SmbiosView/LibSmbios.h (working copy) +@@ -642,3 +642,4 @@ + + + #endif ++ +Index: SmbiosView/smbiosview.h +=================================================================== +--- SmbiosView/smbiosview.h (revision 64) ++++ SmbiosView/smbiosview.h (working copy) +@@ -84,3 +84,4 @@ + extern UINT8 gShowType; + + #endif ++ +Index: guid/guid.inf +=================================================================== +--- guid/guid.inf (revision 64) ++++ guid/guid.inf (working copy) +@@ -37,23 +37,23 @@ + FILE_GUID = CBEB01F8-0912-4d87-8A6B-45D02847A405 + COMPONENT_TYPE = APPLICATION + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + GuidStrings.uni + guid.c + guid.h + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + [libraries.common] + EfiShellLib + EdkProtocolLib +Index: guid/guid.c +=================================================================== +--- guid/guid.c (revision 64) ++++ guid/guid.c (working copy) +@@ -36,7 +36,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiGuidGuid = EFI_GUID_GUID; + SHELL_VAR_CHECK_ITEM GuidCheckList[] = { + { +@@ -55,7 +55,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE)0 + } + }; + +Index: guid/guid.h +=================================================================== +--- guid/guid.h (revision 64) ++++ guid/guid.h (working copy) +@@ -31,4 +31,4 @@ + 0x425bff44, 0x1cae, 0x4c27, 0x98, 0x2c, 0x25, 0xc8, 0x74, 0x59, 0xdf, 0xd6 \ + } + +-#endif +\ No newline at end of file ++#endif +Index: LoadPciRom/LoadPciRom.h +=================================================================== +--- LoadPciRom/LoadPciRom.h (revision 64) ++++ LoadPciRom/LoadPciRom.h (working copy) +@@ -30,3 +30,4 @@ + } + + #endif ++ +Index: LoadPciRom/LoadPciRom.inf +=================================================================== +--- LoadPciRom/LoadPciRom.inf (revision 64) ++++ LoadPciRom/LoadPciRom.inf (working copy) +@@ -41,23 +41,23 @@ + + [sources.common] + LoadPciRomStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + LoadPciRom.c + LoadPciRom.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: LoadPciRom/LoadPciRom.c +=================================================================== +--- LoadPciRom/LoadPciRom.c (revision 64) ++++ LoadPciRom/LoadPciRom.c (working copy) +@@ -24,7 +24,7 @@ + + #include "EfiShellLib.h" + #include "LoadPciRom.h" +-#include "Pci22.h" ++#include "pci22.h" + + extern UINT8 STRING_ARRAY_NAME[]; + +@@ -56,7 +56,7 @@ + ); + + EFI_HANDLE gMyImageHandle; +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiLoadPciRomGuid = EFI_LOADPCIROM_GUID; + SHELL_VAR_CHECK_ITEM LPRCheckList[] = { + { +@@ -81,7 +81,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -377,7 +377,7 @@ + } + + if (EfiRomHeader->CompressionType == EFI_PCI_EXPANSION_ROM_HEADER_COMPRESSED) { +- Status = BS->LocateProtocol (&gEfiDecompressProtocolGuid, NULL, &Decompress); ++ Status = BS->LocateProtocol (&gEfiDecompressProtocolGuid, NULL, (VOID**)&Decompress); + if (EFI_ERROR (Status)) { + PrintToken (STRING_TOKEN (STR_LOADPCIROM_DECOMP_NOT_FOUND), HiiHandle); + SkipImage = TRUE; +Index: ver/ver.h +=================================================================== +--- ver/ver.h (revision 64) ++++ ver/ver.h (working copy) +@@ -37,3 +37,4 @@ + IN EFI_SYSTEM_TABLE *SystemTable + ); + #endif ++ +Index: ver/Ver.inf +=================================================================== +--- ver/Ver.inf (revision 64) ++++ ver/Ver.inf (working copy) +@@ -40,33 +40,33 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + VerStrings.uni + Ver.c + Ver.h + +-[sources.ia32,sources.x64] +- ia32\ver32.c ++[sources.ia32,sources.x64,sources.ARM,sources.AARCH64] ++ ia32/ver32.c + + [sources.ipf] +- ipf\ver64.c ++ IPF/ver64.c + + [sources.ebc] +- ebc\verEbc.c ++ eb./verEbc.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: ver/Ebc/verEbc.c +=================================================================== +--- ver/Ebc/verEbc.c (revision 64) ++++ ver/Ebc/verEbc.c (working copy) +@@ -45,7 +45,7 @@ + Status = BS->LocateProtocol ( + &gEfiEbcProtocolGuid, + NULL, +- &Ebc ++ (VOID**)&Ebc + ); + if (EFI_ERROR (Status)) { + return ; +Index: ver/ver.c +=================================================================== +--- ver/ver.c (revision 64) ++++ ver/ver.c (working copy) +@@ -57,7 +57,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: dmpstore/dmpstore.h +=================================================================== +--- dmpstore/dmpstore.h (revision 64) ++++ dmpstore/dmpstore.h (working copy) +@@ -40,3 +40,4 @@ + } DMPSTORE_VARIABLE; + + #endif ++ +Index: dmpstore/dmpstore.inf +=================================================================== +--- dmpstore/dmpstore.inf (revision 64) ++++ dmpstore/dmpstore.inf (working copy) +@@ -25,24 +25,24 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + DmpstoreStrings.uni + dmpstore.c + dmpstore.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: dmpstore/dmpstore.c +=================================================================== +--- dmpstore/dmpstore.c (revision 64) ++++ dmpstore/dmpstore.c (working copy) +@@ -95,7 +95,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiDmpstoreGuid = EFI_DMPSTORE_GUID; + SHELL_VAR_CHECK_ITEM DmpstoreCheckList[] = { + { +@@ -132,7 +132,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: comp/comp.c +=================================================================== +--- comp/comp.c (revision 64) ++++ comp/comp.c (working copy) +@@ -50,7 +50,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: comp/comp.h +=================================================================== +--- comp/comp.h (revision 64) ++++ comp/comp.h (working copy) +@@ -29,4 +29,4 @@ + 0x7761e2c2, 0x7297, 0x434d, 0xb6, 0x52, 0xa9, 0x76, 0x91, 0xb8, 0x66, 0xf3 \ + } + +-#endif +\ No newline at end of file ++#endif +Index: comp/comp.inf +=================================================================== +--- comp/comp.inf (revision 64) ++++ comp/comp.inf (working copy) +@@ -28,21 +28,21 @@ + CompStrings.uni + comp.c + comp.h +-..\ShCommonStrings.uni ++../ShCommonStrings.uni + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: IpConfig/IpConfig.c +=================================================================== +--- IpConfig/IpConfig.c (revision 64) ++++ IpConfig/IpConfig.c (working copy) +@@ -39,7 +39,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiIpConfigGuid = EFI_IPCONFIG_GUID; + SHELL_VAR_CHECK_ITEM IpconfigCheckList[] = { + { +@@ -76,7 +76,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: IpConfig/IpConfig.h +=================================================================== +--- IpConfig/IpConfig.h (revision 64) ++++ IpConfig/IpConfig.h (working copy) +@@ -29,4 +29,4 @@ + 0x8252915c, 0xf1e9, 0x435c, 0x81, 0x91, 0xad, 0x2f, 0x82, 0x62, 0x23, 0x73 \ + } + +-#endif +\ No newline at end of file ++#endif +Index: IpConfig/IpConfig.inf +=================================================================== +--- IpConfig/IpConfig.inf (revision 64) ++++ IpConfig/IpConfig.inf (working copy) +@@ -25,24 +25,24 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + IpConfigStrings.uni + IpConfig.c + IpConfig.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: sermode/sermode.c +=================================================================== +--- sermode/sermode.c (revision 64) ++++ sermode/sermode.c (working copy) +@@ -35,7 +35,7 @@ + + #include EFI_PROTOCOL_DEFINITION (SerialIo) + +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiSermodeGuid = EFI_SERMODEB_GUID; + SHELL_VAR_CHECK_ITEM SermodeCheckList[] = { + { +@@ -54,7 +54,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -104,7 +104,7 @@ + + } + +- Status = BS->HandleProtocol (Handles[Index], &gEfiSerialIoProtocolGuid, &SerialIo); ++ Status = BS->HandleProtocol (Handles[Index], &gEfiSerialIoProtocolGuid, (VOID**)&SerialIo); + if (!EFI_ERROR (Status)) { + switch (SerialIo->Mode->Parity) { + case DefaultParity: +@@ -454,7 +454,7 @@ + continue; + } + +- Status = BS->HandleProtocol (Handles[Index], &gEfiSerialIoProtocolGuid, &SerialIo); ++ Status = BS->HandleProtocol (Handles[Index], &gEfiSerialIoProtocolGuid, (VOID**)&SerialIo); + if (!EFI_ERROR (Status)) { + Status = SerialIo->SetAttributes ( + SerialIo, +Index: sermode/sermode.h +=================================================================== +--- sermode/sermode.h (revision 64) ++++ sermode/sermode.h (working copy) +@@ -32,3 +32,4 @@ + } + + #endif ++ +Index: sermode/sermode.inf +=================================================================== +--- sermode/sermode.inf (revision 64) ++++ sermode/sermode.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + SermodeStrings.uni + sermode.c + sermode.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: tzone/tzone.c +=================================================================== +--- tzone/tzone.c (revision 64) ++++ tzone/tzone.c (working copy) +@@ -65,7 +65,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -258,7 +258,6 @@ + BOOLEAN bList; + BOOLEAN bSet; + INT16 nValue; +- UINTN uValueSize; + SHELL_VAR_CHECK_CODE RetCode; + CHAR16 *Useful; + SHELL_VAR_CHECK_PACKAGE ChkPck; +@@ -269,7 +268,6 @@ + bList = FALSE; + bSet = FALSE; + nValue = 0; +- uValueSize = sizeof (INTN); + ZeroMem (&ChkPck, sizeof (SHELL_VAR_CHECK_PACKAGE)); + ZeroMem (&Time, sizeof (EFI_TIME)); + // +Index: tzone/timezone.inf +=================================================================== +--- tzone/timezone.inf (revision 64) ++++ tzone/timezone.inf (working copy) +@@ -25,24 +25,24 @@ + COMPONENT_TYPE = APPLICATION + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + TZoneStrings.uni + tzone.c + tzone.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: tzone/tzone.h +=================================================================== +--- tzone/tzone.h (revision 64) ++++ tzone/tzone.h (working copy) +@@ -35,3 +35,4 @@ + } + + #endif ++ +Index: vol/vol.c +=================================================================== +--- vol/vol.c (revision 64) ++++ vol/vol.c (working copy) +@@ -32,7 +32,7 @@ + // + #include STRING_DEFINES_FILE + +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiVolGuid = EFI_VOL_GUID; + SHELL_VAR_CHECK_ITEM VolCheckList[] = { + { +@@ -63,7 +63,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: vol/vol.h +=================================================================== +--- vol/vol.h (revision 64) ++++ vol/vol.h (working copy) +@@ -32,3 +32,4 @@ + } + + #endif ++ +Index: vol/Vol.inf +=================================================================== +--- vol/Vol.inf (revision 64) ++++ vol/Vol.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + VolStrings.uni + Vol.c + Vol.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: cp/cp.c +=================================================================== +--- cp/cp.c (revision 64) ++++ cp/cp.c (working copy) +@@ -66,7 +66,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -578,7 +578,7 @@ + // + if (SrcArg->Status == EFI_SUCCESS && + (SrcArg->Info->Attribute & EFI_FILE_DIRECTORY) && +- (DstArg->Status == EFI_SUCCESS && (DstArg->Info->Attribute & EFI_FILE_DIRECTORY) || DstMustDir && DstHandle) ++ (DstArg->Status == EFI_SUCCESS && ((DstArg->Info->Attribute & EFI_FILE_DIRECTORY) || (DstMustDir && DstHandle))) + ) { + if (StrCmp (SrcFilePath, DstFilePath) == 0) { + PrintToken (STRING_TOKEN (STR_CP_CANNOT_COPY_ITSELF), HiiCpyHandle, L"cp/copy", SrcArg->FullName); +@@ -592,7 +592,7 @@ + // we need to compose a full name of dir\file for the source + // + if (SrcArg->Status == EFI_SUCCESS && +- (DstArg->Status == EFI_SUCCESS && (DstArg->Info->Attribute & EFI_FILE_DIRECTORY) || DstMustDir && DstHandle)) { ++ (DstArg->Status == EFI_SUCCESS && ((DstArg->Info->Attribute & EFI_FILE_DIRECTORY) || (DstMustDir && DstHandle)))) { + if (DstFullName) { + FreePool (DstFullName); + } +@@ -869,7 +869,6 @@ + EFI_STATUS Status; + EFI_FILE_INFO *SrcInfo; + EFI_FILE_INFO *DstInfo; +- EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *DstVol; + EFI_FILE_SYSTEM_INFO *DstFsInfo; + CHAR16 InputString[10]; + UINTN BufSize; +@@ -894,7 +893,6 @@ + SrcInfo = NULL; + DstInfo = NULL; + FileInfo = NULL; +- DstVol = NULL; + DstFsInfo = NULL; + InputString[0] = 0; + BufSize = 0; +@@ -1789,7 +1787,7 @@ + // + if (SrcArg->Status == EFI_SUCCESS && + !(SrcArg->Info->Attribute & EFI_FILE_DIRECTORY) && +- (DstArg->Status == EFI_SUCCESS && (DstArg->Info->Attribute & EFI_FILE_DIRECTORY) || DstDir && DstHandle) ++ (DstArg->Status == EFI_SUCCESS && ((DstArg->Info->Attribute & EFI_FILE_DIRECTORY) || (DstDir && DstHandle))) + ) { + if (DstFullName) { + FreePool (DstFullName); +Index: cp/cp.h +=================================================================== +--- cp/cp.h (revision 64) ++++ cp/cp.h (working copy) +@@ -67,4 +67,5 @@ + IN EFI_SYSTEM_TABLE *SystemTable + ); + +-#endif +\ No newline at end of file ++#endif ++ +Index: cp/cp.inf +=================================================================== +--- cp/cp.inf (revision 64) ++++ cp/cp.inf (working copy) +@@ -41,23 +41,23 @@ + + [sources.common] + CpStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + cp.h + cp.c + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: Library/EfiPart.h +=================================================================== +--- Library/EfiPart.h (revision 64) ++++ Library/EfiPart.h (working copy) +@@ -56,3 +56,4 @@ + #pragma pack() + + #endif ++ +Index: Library/X64/efilibplat.h +=================================================================== +--- Library/X64/efilibplat.h (revision 64) ++++ Library/X64/efilibplat.h (working copy) +@@ -35,3 +35,4 @@ + #define MIN_ALIGNMENT_SIZE 8 + + #endif ++ +Index: Library/ShellEnvInt.h +=================================================================== +--- Library/ShellEnvInt.h (revision 64) ++++ Library/ShellEnvInt.h (working copy) +@@ -196,4 +196,6 @@ + VOID + ); + +-#endif +\ No newline at end of file ++#endif ++ ++ +Index: Library/LinkedList.h +=================================================================== +--- Library/LinkedList.h (revision 64) ++++ Library/LinkedList.h (working copy) +@@ -77,11 +77,10 @@ + } + + #define SwapListEntries(Entry1, Entry2) { \ +- EFI_LIST_ENTRY *Entry1Flink, *Entry1Blink; \ ++ EFI_LIST_ENTRY *Entry1Blink; \ + EFI_LIST_ENTRY *Entry2Flink, *Entry2Blink; \ + Entry2Flink = (Entry2)->Flink; \ + Entry2Blink = (Entry2)->Blink; \ +- Entry1Flink = (Entry1)->Flink; \ + Entry1Blink = (Entry1)->Blink; \ + Entry2Blink->Flink = Entry2Flink; \ + Entry2Flink->Blink = Entry2Blink; \ +@@ -100,3 +99,4 @@ + // A lock structure + // + #endif ++ +Index: Library/IO.c +=================================================================== +--- Library/IO.c (revision 64) ++++ Library/IO.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + #define PRINT_STRING_LEN 1024 + #define PRINT_ITEM_BUFFER_LEN 100 +@@ -86,8 +86,8 @@ + typedef struct { + BOOLEAN PageBreak; + BOOLEAN AutoWrap; +- INTN MaxRow; +- INTN MaxColumn; ++ UINTN MaxRow; ++ UINTN MaxColumn; + INTN InitRow; + INTN Row; + INTN Column; +@@ -1575,7 +1575,7 @@ + { + BOOLEAN Done; + UINTN Column; +- INTN Row; ++ UINTN Row; + UINTN StartColumn; + UINTN Update; + UINTN Delete; +@@ -1769,7 +1769,7 @@ + // + // If we need to update the output do so now + // +- if (Update != -1) { ++ if (Update != (UINTN) -1) { + PrintAt (Column, Row, L"%s%.*s", InStr + Update, Delete, L""); + Len = StrLen (InStr); + +@@ -1928,8 +1928,8 @@ + return mPrintMode.PageBreak; + } + ++#if 0 + STATIC +- + BOOLEAN + GetOutputPause ( + VOID +@@ -1937,6 +1937,7 @@ + { + return mPrintMode.OutputPause; + } ++#endif + + INTN + DbgPrint ( +Index: Library/FileIO.c +=================================================================== +--- Library/FileIO.c (revision 64) ++++ Library/FileIO.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + typedef struct _PATH_COMPONENTS { + CHAR16 *Name; +@@ -719,7 +719,6 @@ + IN OUT CHAR16 **Path + ) + { +- EFI_STATUS Status; + CHAR16 *p; + UINTN Size; + +@@ -728,7 +727,6 @@ + + *Fs = NULL; + *Path = NULL; +- Status = EFI_SUCCESS; + + p = AbPath; + while (*p) { +@@ -1017,13 +1015,11 @@ + EFI_LIST_ENTRY SrcList; + EFI_LIST_ENTRY DstList; + EFI_STATUS Status; +- EFI_LIST_ENTRY *Link; + SHELL_FILE_ARG *SrcArg; + SHELL_FILE_ARG *DstArg; + + ASSERT (IsSame != NULL); + +- Link = NULL; + SrcArg = NULL; + DstArg = NULL; + InitializeListHead (&SrcList); +Index: Library/Aarch64/efilibplat.h +=================================================================== +--- Library/Aarch64/efilibplat.h (revision 0) ++++ Library/Aarch64/efilibplat.h (revision 0) +@@ -0,0 +1,38 @@ ++/*++ ++ ++Copyright (c) 2005, 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. ++ ++Module Name: ++ ++ efilibplat.h ++ ++Abstract: ++ ++ EFI to compile bindings ++ ++ ++ ++Revision History ++ ++--*/ ++ ++#ifndef _EFI_LIB_PLAT_H ++#define _EFI_LIB_PLAT_H ++ ++VOID ++InitializeLibPlatform ( ++ IN EFI_HANDLE ImageHandle, ++ IN EFI_SYSTEM_TABLE *SystemTable ++ ); ++ ++#define MIN_ALIGNMENT_SIZE 8 ++ ++#endif ++ +Index: Library/Ebc/EfiLibPlat.h +=================================================================== +--- Library/Ebc/EfiLibPlat.h (revision 64) ++++ Library/Ebc/EfiLibPlat.h (working copy) +@@ -44,3 +44,4 @@ + ; + + #define MIN_ALIGNMENT_SIZE 8 ++ +Index: Library/Str.c +=================================================================== +--- Library/Str.c (revision 64) ++++ Library/Str.c (working copy) +@@ -22,7 +22,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + INTN + StrCmp ( +@@ -421,7 +421,7 @@ + return (UINTN) -1; + } + +- u = u << 4 | c - (c >= 'A' ? 'A' - 10 : '0'); ++ u = (u << 4) | (c - (c >= 'A' ? 'A' - 10 : '0')); + } else { + break; + } +@@ -472,7 +472,7 @@ + c = *(str++); + while (c) { + if (c >= '0' && c <= '9') { +- if (u > m || u == m && c - '0' > (INTN) n) { ++ if ((u > m) || ((u == m) && (c - '0' > (INTN) n))) { + return (UINTN) -1; + } + +Index: Library/Data.c +=================================================================== +--- Library/Data.c (revision 64) ++++ Library/Data.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + // + // ShellLibInitialized - TRUE once InitializeShellLib() is called for the first time +Index: Library/IO.h +=================================================================== +--- Library/IO.h (revision 64) ++++ Library/IO.h (working copy) +@@ -157,4 +157,6 @@ + ); + + +-#endif +\ No newline at end of file ++#endif ++ ++ +Index: Library/FileIO.h +=================================================================== +--- Library/FileIO.h (revision 64) ++++ Library/FileIO.h (working copy) +@@ -208,4 +208,6 @@ + IN SIMPLE_READ_FILE SimpleReadHandle + ); + +-#endif +\ No newline at end of file ++#endif ++ ++ +Index: Library/Str.h +=================================================================== +--- Library/Str.h (revision 64) ++++ Library/Str.h (working copy) +@@ -248,3 +248,4 @@ + ); + + #endif ++ +Index: Library/Mem.c +=================================================================== +--- Library/Mem.c (revision 64) ++++ Library/Mem.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + VOID + SetMem ( +Index: Library/RtData.c +=================================================================== +--- Library/RtData.c (revision 64) ++++ Library/RtData.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + // + // RT - pointer to the runtime table +Index: Library/Event.c +=================================================================== +--- Library/Event.c (revision 64) ++++ Library/Event.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + EFI_EVENT + LibCreateProtocolNotifyEvent ( +Index: Library/Mem.h +=================================================================== +--- Library/Mem.h (revision 64) ++++ Library/Mem.h (working copy) +@@ -73,4 +73,6 @@ + IN UINTN Size + ); + +-#endif +\ No newline at end of file ++#endif ++ ++ +Index: Library/Event.h +=================================================================== +--- Library/Event.h (revision 64) ++++ Library/Event.h (working copy) +@@ -50,4 +50,6 @@ + OUT EFI_INPUT_KEY *Key + ); + +-#endif +\ No newline at end of file ++#endif ++ ++ +Index: Library/EfiShellLib.h +=================================================================== +--- Library/EfiShellLib.h (revision 64) ++++ Library/EfiShellLib.h (working copy) +@@ -25,7 +25,7 @@ + #define _EFI_SHELL_LIB_INCLUDE_ + + #include "Tiano.h" +-#include "ShellEnv.h" ++#include "shellenv.h" + #include "pci22.h" + + #include EFI_ARCH_PROTOCOL_DEFINITION (Bds) +@@ -51,7 +51,7 @@ + #include EFI_GUID_DEFINITION (PrimaryConsoleOutDevice) + #include EFI_GUID_DEFINITION (PrimaryStandardErrorDevice) + #include EFI_GUID_DEFINITION (SalSystemTable) +-#include EFI_GUID_DEFINITION (Smbios) ++#include EFI_GUID_DEFINITION (SmBios) + #include EFI_GUID_DEFINITION (StandardErrorDevice) + #include EFI_GUID_DEFINITION (FrameworkDevicePath) + #include EFI_PROTOCOL_DEFINITION (AbsolutePointer) +@@ -67,7 +67,7 @@ + #include EFI_PROTOCOL_DEFINITION (DebugPort) + #include EFI_PROTOCOL_DEFINITION (DebugSupport) + #include EFI_PROTOCOL_DEFINITION (Decompress) +-#include EFI_PROTOCOL_DEFINITION (DeviceIO) ++#include EFI_PROTOCOL_DEFINITION (DeviceIo) + #include EFI_PROTOCOL_DEFINITION (DevicePath) + #include EFI_PROTOCOL_DEFINITION (DevicePathFromText) + #include EFI_PROTOCOL_DEFINITION (DevicePathToText) +@@ -111,7 +111,7 @@ + #include EFI_PROTOCOL_DEFINITION (PciRootBridgeIo) + #include EFI_PROTOCOL_DEFINITION (PlatformDriverOverride) + #include EFI_PROTOCOL_DEFINITION (PxeBaseCode) +-#include EFI_PROTOCOL_DEFINITION (PxeBaseCodeCallback) ++#include EFI_PROTOCOL_DEFINITION (PxeBaseCodeCallBack) + #include EFI_PROTOCOL_DEFINITION (ScsiIo) + #include EFI_PROTOCOL_DEFINITION (ScsiPassThru) + #include EFI_PROTOCOL_DEFINITION (SectionExtraction) +@@ -152,7 +152,7 @@ + #include EFI_PROTOCOL_DEFINITION (PlatformToDriverConfiguration) + + #include "efilibplat.h" +-#include "efipart.h" ++#include "EfiPart.h" + #include "ShellDebug.h" + #include "CRC.h" + #include "DPath.h" +@@ -358,3 +358,4 @@ + ); + + #endif ++ +Index: Library/Handle.c +=================================================================== +--- Library/Handle.c (revision 64) ++++ Library/Handle.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + EFI_STATUS + LibLocateHandle ( +@@ -131,7 +131,6 @@ + EFI_HANDLE *BlockIoBuffer; + EFI_DEVICE_PATH_PROTOCOL *DevicePath; + UINTN Index; +- EFI_DEVICE_PATH_PROTOCOL *Start; + EFI_DEVICE_PATH_PROTOCOL *Next; + EFI_DEVICE_PATH_PROTOCOL *DevPath; + HARDDRIVE_DEVICE_PATH *HardDriveDevicePath; +@@ -204,7 +203,6 @@ + PreviousNodeIsHardDriveDevicePath = FALSE; + + DevPath = DevicePath; +- Start = DevPath; + // + // Check for end of device path type + // +@@ -796,14 +794,12 @@ + UINTN OpenInfoIndex; + UINTN ChildIndex; + BOOLEAN DriverBindingHandleIndexValid; +- BOOLEAN ControllerHandleIndexValid; + + DriverBindingHandleIndexValid = FALSE; + if (DriverBindingHandleIndex != NULL) { + *DriverBindingHandleIndex = 0xffffffff; + } + +- ControllerHandleIndexValid = FALSE; + if (ControllerHandleIndex != NULL) { + *ControllerHandleIndex = 0xffffffff; + } +@@ -847,7 +843,6 @@ + + if (ControllerHandle != NULL && ControllerHandleIndex != NULL && (*HandleBuffer)[HandleIndex] == ControllerHandle) { + *ControllerHandleIndex = (UINT32) HandleIndex; +- ControllerHandleIndexValid = TRUE; + } + + } +@@ -1305,7 +1300,7 @@ + Status = BS->HandleProtocol ( + Handles[Index], + ProtocolGuid, +- Interface ++ (VOID**)Interface + ); + + if (!EFI_ERROR (Status)) { +Index: Library/Misc.c +=================================================================== +--- Library/Misc.c (revision 64) ++++ Library/Misc.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + #if (PLATFORM == NT32) + #define LOCAL_EFI_WIN_NT_THUNK_PROTOCOL_GUID \ +@@ -348,7 +348,7 @@ + ASSERT (Buffer != NULL); + + if (mShellEnv == NULL) { +- Status = LibLocateProtocol (&ShellEnvProtocol, &mShellEnv); ++ Status = LibLocateProtocol (&ShellEnvProtocol, (VOID**)&mShellEnv); + if (EFI_ERROR (Status)) { + mShellEnv = NULL; + } +@@ -1171,7 +1171,7 @@ + Status = BS->HandleProtocol ( + Image->DeviceHandle, + &gEfiFirmwareVolumeProtocolGuid, +- &FV ++ (VOID**)&FV + ); + if (!EFI_ERROR (Status)) { + Status = FV->ReadSection ( +@@ -1192,7 +1192,7 @@ + Status = BS->HandleProtocol ( + Image->DeviceHandle, + &gEfiFirmwareVolume2ProtocolGuid, +- &FV2 ++ (VOID**)&FV2 + ); + if (!EFI_ERROR (Status)) { + Status = FV2->ReadSection ( +@@ -1339,7 +1339,7 @@ + { + EFI_STATUS Status; + CHAR16 *String; +- EFI_HII_HANDLE HiiHandle; ++ STATIC EFI_HII_HANDLE HiiHandle; + + ASSERT (Str); + +@@ -1730,6 +1730,8 @@ + return L"X64"; + case EFI_IMAGE_MACHINE_IA64: + return L"IA64"; ++ case EFI_IMAGE_MACHINE_AARCH64: ++ return L"AARCH64"; + default: + return L"UNKNOWN"; + } +@@ -2544,4 +2546,5 @@ + } + + return Status; +-} +\ No newline at end of file ++} ++ +Index: Library/Perf.c +=================================================================== +--- Library/Perf.c (revision 64) ++++ Library/Perf.c (working copy) +@@ -19,7 +19,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + #include EFI_PROTOCOL_DEFINITION (Performance) + +Index: Library/IPF/efilibplat.h +=================================================================== +--- Library/IPF/efilibplat.h (revision 64) ++++ Library/IPF/efilibplat.h (working copy) +@@ -35,3 +35,4 @@ + #define MIN_ALIGNMENT_SIZE 8 + + #endif ++ +Index: Library/IPF/palproc.h +=================================================================== +--- Library/IPF/palproc.h (revision 64) ++++ Library/IPF/palproc.h (working copy) +@@ -58,3 +58,4 @@ + #define PAL_MC_REGISTER_MEM 0x001b + + #endif // _PALPROC_H ++ +Index: Library/IPF/libsalpal.h +=================================================================== +--- Library/IPF/libsalpal.h (revision 64) ++++ Library/IPF/libsalpal.h (working copy) +@@ -74,4 +74,4 @@ + IN UINT64 Arg8 + ); + +-#endif +\ No newline at end of file ++#endif +Index: Library/Arm/efilibplat.h +=================================================================== +--- Library/Arm/efilibplat.h (revision 0) ++++ Library/Arm/efilibplat.h (revision 0) +@@ -0,0 +1,39 @@ ++/*++ ++ ++Copyright (c) 2005, 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. ++ ++Module Name: ++ ++ efilibplat.h ++ ++Abstract: ++ ++ EFI to compile bindings ++ ++ ++ ++ ++Revision History ++ ++--*/ ++#ifndef _EFI_LIB_PLAT_H_ ++#define _EFI_LIB_PLAT_H_ ++ ++VOID ++InitializeLibPlatform ( ++ IN EFI_HANDLE ImageHandle, ++ IN EFI_SYSTEM_TABLE *SystemTable ++ ); ++ ++#define MIN_ALIGNMENT_SIZE 4 ++ ++#endif ++ ++ +Index: Library/ConsistMapping.c +=================================================================== +--- Library/ConsistMapping.c (revision 64) ++++ Library/ConsistMapping.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + MTD_NAME mMTDName[] = { + { +Index: Library/DPath.c +=================================================================== +--- Library/DPath.c (revision 64) ++++ Library/DPath.c (working copy) +@@ -20,7 +20,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + EFI_GUID mEfiDevicePathMessagingUartFlowControlGuid = DEVICE_PATH_MESSAGING_UART_FLOW_CONTROL; + +@@ -1468,7 +1468,7 @@ + + Status = LibLocateProtocol ( + &gEfiDevicePathToTextProtocolGuid, +- &DevPathToText ++ (VOID**)&DevPathToText + ); + if (!EFI_ERROR (Status)) { + ToText = DevPathToText->ConvertDevicePathToText ( +@@ -1766,7 +1766,7 @@ + Status = BS->HandleProtocol ( + Device, + Protocol, +- Interface ++ (VOID**)Interface + ); + } + } +Index: Library/Handle.h +=================================================================== +--- Library/Handle.h (revision 64) ++++ Library/Handle.h (working copy) +@@ -161,3 +161,4 @@ + ); + + #endif ++ +Index: Library/Misc.h +=================================================================== +--- Library/Misc.h (revision 64) ++++ Library/Misc.h (working copy) +@@ -258,3 +258,4 @@ + ); + + #endif ++ +Index: Library/ConsistMapping.h +=================================================================== +--- Library/ConsistMapping.h (revision 64) ++++ Library/ConsistMapping.h (working copy) +@@ -79,4 +79,6 @@ + IN VOID *Buffer2 + ); + +-#endif +\ No newline at end of file ++#endif ++ ++ +Index: Library/Init.c +=================================================================== +--- Library/Init.c (revision 64) ++++ Library/Init.c (working copy) +@@ -20,7 +20,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + extern EFI_UNICODE_COLLATION_PROTOCOL LibStubUnicodeInterface; + +Index: Library/DPath.h +=================================================================== +--- Library/DPath.h (revision 64) ++++ Library/DPath.h (working copy) +@@ -24,7 +24,7 @@ + #ifndef _D_PATH_H + #define _D_PATH_H + +-#define NextStrA(a) ((UINT8 *) (((UINT8 *) (a)) + strlena (a) + 1)) ++#define NextStrA(a) (CHAR8*)((UINT8 *) (((UINT8 *) (a)) + strlena (a) + 1)) + + #include EFI_GUID_DEFINITION (PcAnsi) + +@@ -153,3 +153,4 @@ + ); + + #endif ++ +Index: Library/HiiSupport.c +=================================================================== +--- Library/HiiSupport.c (revision 64) ++++ Library/HiiSupport.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + #if (EFI_SPECIFICATION_VERSION >= 0x0002000A) + +@@ -56,11 +56,11 @@ + return EFI_SUCCESS; + } + +- Status = LibLocateProtocol (&gEfiHiiDatabaseProtocolGuid, &gLibHiiDatabase); ++ Status = LibLocateProtocol (&gEfiHiiDatabaseProtocolGuid, (VOID**)&gLibHiiDatabase); + if (EFI_ERROR (Status)) { + return Status; + } +- Status = LibLocateProtocol (&gEfiHiiStringProtocolGuid, &gLibHiiString); ++ Status = LibLocateProtocol (&gEfiHiiStringProtocolGuid, (VOID**)&gLibHiiString); + if (EFI_ERROR (Status)) { + return Status; + } +Index: Library/CRC.c +=================================================================== +--- Library/CRC.c (revision 64) ++++ Library/CRC.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + UINT32 CRCTable[256] = { + 0x00000000, +Index: Library/HiiSupport.h +=================================================================== +--- Library/HiiSupport.h (revision 64) ++++ Library/HiiSupport.h (working copy) +@@ -142,3 +142,4 @@ + ; + + #endif ++ +Index: Library/CRC.h +=================================================================== +--- Library/CRC.h (revision 64) ++++ Library/CRC.h (working copy) +@@ -53,4 +53,6 @@ + UINTN Size + ); + +-#endif +\ No newline at end of file ++#endif ++ ++ +Index: Library/EfiShellLib.inf +=================================================================== +--- Library/EfiShellLib.inf (revision 64) ++++ Library/EfiShellLib.inf (working copy) +@@ -45,34 +45,42 @@ + HiiSupport.c + + [sources.ia32] +- ia32\math.c +- ia32\initplat.c ++ IA32/math.c ++ IA32/initplat.c + + [sources.ipf] +- ipf\math.c +- ipf\initplat.c +- ipf\palproc.s +- ipf\salpal.c ++ IPF/math.c ++ IPF/initplat.c ++ IPF/palproc.s ++ IPF/salpal.c + + [sources.EBC] +- EBC\math.c +- EBC\initplat.c +- ++ Ebc/math.c ++ Ebc/initplat.c ++ + [sources.x64] +- ipf\math.c +- ia32\initplat.c ++ IPF/math.c ++ IA32/initplat.c + ++[sources.ARM] ++ IPF/math.c ++ IA32/initplat.c ++ ++[sources.AARCH64] ++ IPF/math.c ++ IA32/initplat.c ++ + [includes.common] + . +- ..\Inc +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Core\Dxe ++ ../Inc ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Core/Dxe + + [libraries.common] + EdkFrameworkProtocolLib +@@ -81,4 +89,11 @@ + EfiGuidLib + EdkGuidLib + ++[libraries.ARM] ++ CompilerIntrinsicsLib ++ ++[libraries.AARCH64] ++ CompilerIntrinsicsLib ++ ++ + [nmake.common] +Index: Library/IA32/efilibplat.h +=================================================================== +--- Library/IA32/efilibplat.h (revision 64) ++++ Library/IA32/efilibplat.h (working copy) +@@ -34,4 +34,4 @@ + + #define MIN_ALIGNMENT_SIZE 4 + +-#endif +\ No newline at end of file ++#endif +Index: Library/ShellDebug.c +=================================================================== +--- Library/ShellDebug.c (revision 64) ++++ Library/ShellDebug.c (working copy) +@@ -19,7 +19,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + #include EFI_PROTOCOL_DEFINITION (DebugAssert) + + EFI_DEBUG_ASSERT_PROTOCOL *mDebugAssert = NULL; +Index: Library/ShellDebug.h +=================================================================== +--- Library/ShellDebug.h (revision 64) ++++ Library/ShellDebug.h (working copy) +@@ -99,3 +99,4 @@ + ); + #endif + ++ +Index: Library/VarCheck.c +=================================================================== +--- Library/VarCheck.c (revision 64) ++++ Library/VarCheck.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + VOID + LibCheckVarFreeVarList ( +Index: Library/Lock.c +=================================================================== +--- Library/Lock.c (revision 64) ++++ Library/Lock.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + VOID + InitializeLock ( +Index: Library/ShellEnvInt.c +=================================================================== +--- Library/ShellEnvInt.c (revision 64) ++++ Library/ShellEnvInt.c (working copy) +@@ -21,7 +21,7 @@ + + --*/ + +-#include "EfiShelllib.h" ++#include "EfiShellLib.h" + + EFI_STATUS + ShellExecute ( +Index: Library/VarCheck.h +=================================================================== +--- Library/VarCheck.h (revision 64) ++++ Library/VarCheck.h (working copy) +@@ -41,7 +41,7 @@ + ARG_PARTIALLY_QUOTED = 0x2, + ARG_FIRST_HALF_QUOTED = 0x4, + ARG_FIRST_CHAR_IS_ESC = 0x8 +-}; ++} SHELL_ARG_EXPR; + + typedef struct { + CHAR16 *FlagStr; +@@ -116,3 +116,4 @@ + ); + + #endif ++ +Index: Library/Lock.h +=================================================================== +--- Library/Lock.h (revision 64) ++++ Library/Lock.h (working copy) +@@ -45,4 +45,6 @@ + IN FLOCK *Lock + ); + +-#endif +\ No newline at end of file ++#endif ++ ++ +Index: ShellFull.inf +=================================================================== +--- ShellFull.inf (revision 64) ++++ ShellFull.inf (working copy) +@@ -20,300 +20,310 @@ + #--*/ + + [defines] +-BASE_NAME = Shell +-FILE_GUID = c57ad6b7-0515-40a8-9d21-551652854e37 ++BASE_NAME = ShellFull ++FILE_GUID = 1903FB23-E526-4BDA-85E4-D68F2EEF0C20 + COMPONENT_TYPE = APPLICATION + + [sources.common] +- Library\ShellDebug.c +- Library\DPath.c +- Library\Init.c +- Library\Lock.c +- Library\Str.c +- Library\IO.c +- Library\Mem.c +- Library\Misc.c +- Library\Data.c +- Library\RtData.c +- Library\ShellEnvInt.c +- Library\Handle.c +- Library\FileIO.c +- Library\ConsistMapping.c +- Library\CRC.c +- Library\Event.c +- Library\Perf.c +- Library\VarCheck.c +- Library\HiiSupport.c ++ Library/ShellDebug.c ++ Library/DPath.c ++ Library/Init.c ++ Library/Lock.c ++ Library/Str.c ++ Library/IO.c ++ Library/Mem.c ++ Library/Misc.c ++ Library/Data.c ++ Library/RtData.c ++ Library/ShellEnvInt.c ++ Library/Handle.c ++ Library/FileIO.c ++ Library/ConsistMapping.c ++ Library/CRC.c ++ Library/Event.c ++ Library/Perf.c ++ Library/VarCheck.c ++ Library/HiiSupport.c + +- newshell\NshellStrings.uni +- newshell\init.c +- newshell\nshell.h +- newshell\fakehii.c ++ newshell/NshellStrings.uni ++ newshell/init.c ++ newshell/nshell.h ++ newshell/fakehii.c + + ShCommonStrings.uni +- shellenv\ShellenvHelpStrings.uni +- shellenv\ShellenvStrings.uni +- shellenv\ScriptCmdStrings.uni +- shellenv\ConnectStrings.uni +- shellenv\EchoStrings.uni +- shellenv\HelpStrings.uni +- shellenv\MapStrings.uni +- shellenv\CdStrings.uni +- shellenv\DhStrings.uni ++ shellenv/ShellenvHelpStrings.uni ++ shellenv/ShellenvStrings.uni ++ shellenv/ScriptCmdStrings.uni ++ shellenv/ConnectStrings.uni ++ shellenv/EchoStrings.uni ++ shellenv/HelpStrings.uni ++ shellenv/MapStrings.uni ++ shellenv/CdStrings.uni ++ shellenv/DhStrings.uni + +- shellenv\cmddisp.c +- shellenv\connect.c +- shellenv\data.c +- shellenv\exec.c +- shellenv\init.c +- shellenv\protid.c +- shellenv\var.c +- shellenv\conio.c +- shellenv\consoleproxy.c +- shellenv\handle.c +- shellenv\dprot.c +- shellenv\map.c +- shellenv\marg.c +- shellenv\batch.c +- shellenv\if.c +- shellenv\goto.c +- shellenv\echo.c +- shellenv\pause.c +- shellenv\for.c +- shellenv\wait.c +- shellenv\help.c +- shellenv\shelle.h +- shellenv\shellenvguid.h +- shellenv\parsecmd.c +- shellenv\shift.c ++ shellenv/cmddisp.c ++ shellenv/connect.c ++ shellenv/data.c ++ shellenv/exec.c ++ shellenv/init.c ++ shellenv/protid.c ++ shellenv/var.c ++ shellenv/conio.c ++ shellenv/consoleproxy.c ++ shellenv/handle.c ++ shellenv/dprot.c ++ shellenv/map.c ++ shellenv/marg.c ++ shellenv/batch.c ++ shellenv/if.c ++ shellenv/goto.c ++ shellenv/echo.c ++ shellenv/pause.c ++ shellenv/for.c ++ shellenv/wait.c ++ shellenv/help.c ++ shellenv/shelle.h ++ shellenv/shellenvguid.h ++ shellenv/parsecmd.c ++ shellenv/shift.c + +- unload\UnloadStrings.uni +- unload\unload.c ++ unload/UnloadStrings.uni ++ unload/unload.c + +- attrib\AttribStrings.uni +- attrib\attrib.c +- attrib\attrib.h ++ attrib/AttribStrings.uni ++ attrib/attrib.c ++ attrib/attrib.h + +- cls\clsstrings.uni +- cls\cls.c ++ cls/clsstrings.uni ++ cls/cls.c + +- cp\CpStrings.uni +- cp\cp.h +- cp\cp.c ++ cp/CpStrings.uni ++ cp/cp.h ++ cp/cp.c + +- date\DateStrings.uni +- date\date.c +- date\date.h ++ date/DateStrings.uni ++ date/date.c ++ date/date.h + +- load\LoadStrings.uni +- load\load.c +- load\load.h ++ load/LoadStrings.uni ++ load/load.c ++ load/load.h + +- ls\LsStrings.uni +- ls\ls.h +- ls\ls.c ++ ls/LsStrings.uni ++ ls/ls.h ++ ls/ls.c + +- mkdir\MkdirStrings.uni +- mkdir\mkdir.c +- mkdir\mkdir.h ++ mkdir/MkdirStrings.uni ++ mkdir/mkdir.c ++ mkdir/mkdir.h + +- mv\MvStrings.uni +- mv\mv.c +- mv\mv.h ++ mv/MvStrings.uni ++ mv/mv.c ++ mv/mv.h + +- reset\ResetStrings.uni +- reset\reset.c +- reset\reset.h ++ reset/ResetStrings.uni ++ reset/reset.c ++ reset/reset.h + +- rm\RmStrings.uni +- rm\rm.h +- rm\rm.c ++ rm/RmStrings.uni ++ rm/rm.h ++ rm/rm.c + +- type\TypeStrings.uni +- type\type.c +- type\type.h +- time\TimeStrings.uni +- time\time.c +- time\time.h ++ type/TypeStrings.uni ++ type/type.c ++ type/type.h ++ time/TimeStrings.uni ++ time/time.c ++ time/time.h + +- touch\TouchStrings.uni +- touch\touch.c +- touch\touch.h ++ touch/TouchStrings.uni ++ touch/touch.c ++ touch/touch.h + +- vol\VolStrings.uni +- vol\vol.c +- vol\vol.h ++ vol/VolStrings.uni ++ vol/vol.c ++ vol/vol.h + +- ver\VerStrings.uni +- ver\ver.c +- ver\ver.h ++ ver/VerStrings.uni ++ ver/ver.c ++ ver/ver.h + +- drivers\driversStrings.uni +- drivers\drivers.c +- drivers\drivers.h ++ drivers/driversStrings.uni ++ drivers/drivers.c ++ drivers/drivers.h + +- drvcfg\DrvcfgStrings.uni +- drvcfg\drvcfg.c +- drvcfg\drvcfg.h ++ drvcfg/DrvcfgStrings.uni ++ drvcfg/drvcfg.c ++ drvcfg/drvcfg.h + +- drvdiag\DrvdiagStrings.uni +- drvdiag\drvdiag.c +- drvdiag\drvdiag.h ++ drvdiag/DrvdiagStrings.uni ++ drvdiag/drvdiag.c ++ drvdiag/drvdiag.h + +- comp\CompStrings.uni +- comp\comp.c ++ comp/CompStrings.uni ++ comp/comp.c + +- dblk\dblkStrings.uni +- dblk\dblk.c +- dblk\efidump.c ++ dblk/dblkStrings.uni ++ dblk/dblk.c ++ dblk/efidump.c + +- devices\DevicesStrings.uni +- devices\devices.c ++ devices/DevicesStrings.uni ++ devices/devices.c + +- devicetree\DevicetreeStrings.uni +- devicetree\devicetree.c ++ devicetree/DevicetreeStrings.uni ++ devicetree/devicetree.c + +- dmem\MemStrings.uni +- dmem\DebugStrings.uni +- dmem\mem.c +- dmem\MemCommonPart.c +- dmem\efidump.c ++ dmem/MemStrings.uni ++ dmem/DebugStrings.uni ++ dmem/mem.c ++ dmem/MemCommonPart.c ++ dmem/efidump.c + +- dmpstore\DmpstoreStrings.uni +- dmpstore\dmpstore.c ++ dmpstore/DmpstoreStrings.uni ++ dmpstore/dmpstore.c + +- edit\EditStrings.uni +- edit\main.c +- edit\libFileBuffer.c +- edit\libEditor.c +- edit\libTitleBar.c +- edit\libStatusBar.c +- edit\libInputBar.c +- edit\libMenuBar.c +- edit\libMisc.c ++ edit/EditStrings.uni ++ edit/main.c ++ edit/libFileBuffer.c ++ edit/libEditor.c ++ edit/libTitleBar.c ++ edit/libStatusBar.c ++ edit/libInputBar.c ++ edit/libMenuBar.c ++ edit/libMisc.c + +- eficompress\CompressStrings.uni +- eficompress\compressMain.c +- eficompress\compress.c ++ eficompress/CompressStrings.uni ++ eficompress/compressMain.c ++ eficompress/compress.c + +- efidecompress\DecompressStrings.uni +- efidecompress\decompress.c ++ efidecompress/DecompressStrings.uni ++ efidecompress/decompress.c + +- err\ErrStrings.uni +- err\err.c ++ err/ErrStrings.uni ++ err/err.c + +- guid\GuidStrings.uni +- guid\guid.c ++ guid/GuidStrings.uni ++ guid/guid.c + +- hexedit\HexeditStrings.uni +- hexedit\main.c +- hexedit\libBufferImage.c +- hexedit\libFileImage.c +- hexedit\libDiskImage.c +- hexedit\libMemImage.c +- hexedit\libEditor.c +- hexedit\libTitleBar.c +- hexedit\libStatusBar.c +- hexedit\libInputBar.c +- hexedit\libMenuBar.c +- hexedit\libClipBoard.c +- hexedit\libMisc.c ++ hexedit/HexeditStrings.uni ++ hexedit/main.c ++ hexedit/libBufferImage.c ++ hexedit/libFileImage.c ++ hexedit/libDiskImage.c ++ hexedit/libMemImage.c ++ hexedit/libEditor.c ++ hexedit/libTitleBar.c ++ hexedit/libStatusBar.c ++ hexedit/libInputBar.c ++ hexedit/libMenuBar.c ++ hexedit/libClipBoard.c ++ hexedit/libMisc.c + +- IfConfig\IfConfigStrings.uni +- IfConfig\IfConfig.c +- IfConfig\IfConfig.h +- IfConfig\ShellNetHelper.c ++ IfConfig/IfConfigStrings.uni ++ IfConfig/IfConfig.c ++ IfConfig/IfConfig.h ++ IfConfig/ShellNetHelper.c + +- ipconfig\IpConfigStrings.uni +- ipconfig\IpConfig.c ++ IpConfig/IpConfigStrings.uni ++ IpConfig/IpConfig.c + +- loadpcirom\LoadPciRomStrings.uni +- loadpcirom\LoadPciRom.c ++ loadpcirom/LoadPciRomStrings.uni ++ loadpcirom/LoadPciRom.c + +- mem\MemStrings.uni +- mem\DebugStrings.uni +- mem\mm.c +- mem\MemCommonPart.c +- mem\efidump.c ++ mem/MemStrings.uni ++ mem/DebugStrings.uni ++ mem/mm.c ++ mem/MemCommonPart.c ++ mem/efidump.c + +- memmap\memmapStrings.uni +- memmap\memmap.c ++ memmap/memmapStrings.uni ++ memmap/memmap.c + +- mm\MmStrings.uni +- mm\mm.c ++ mm/MmStrings.uni ++ mm/mm.c + +- mode\ModeStrings.uni +- mode\mode.c ++ mode/ModeStrings.uni ++ mode/mode.c + +- mount\MountStrings.uni +- mount\mount.c ++ mount/MountStrings.uni ++ mount/mount.c + +- openinfo\OPeninfoStrings.uni +- openinfo\openinfo.c ++ openinfo/OPeninfoStrings.uni ++ openinfo/openinfo.c + +- Ping\PingStrings.uni +- Ping\Ping.c ++ Ping/PingStrings.uni ++ Ping/Ping.c + +- pci\PciStrings.uni +- pci\pci.c +- pci\pci_class.c ++ pci/PciStrings.uni ++ pci/pci.c ++ pci/pci_class.c + +- sermode\SermodeStrings.uni +- sermode\sermode.c ++ sermode/SermodeStrings.uni ++ sermode/sermode.c + +- smbiosview\SmBiosViewStrings.uni +- smbiosview\QueryTable.c +- smbiosview\EventLogInfo.c +- smbiosview\PrintInfo.c +- smbiosview\LibSmbiosView.c +- smbiosview\smbiosview.c +- smbiosview\smbios.c ++ smbiosview/SmBiosViewStrings.uni ++ smbiosview/QueryTable.c ++ smbiosview/EventLogInfo.c ++ smbiosview/PrintInfo.c ++ smbiosview/LibSmbiosView.c ++ smbiosview/smbiosview.c ++ smbiosview/smbios.c + +- stall\stallStrings.uni +- stall\stall.c ++ stall/stallStrings.uni ++ stall/stall.c + +- telnetmgmt\TelnetMgmtStrings.uni +- telnetmgmt\TelnetMgmt.c ++ telnetmgmt/TelnetMgmtStrings.uni ++ telnetmgmt/TelnetMgmt.c + +- tzone\TZoneStrings.uni +- tzone\tzone.c ++ tzone/TZoneStrings.uni ++ tzone/tzone.c + + [sources.ia32] +- ver\ia32\ver32.c +- Library\ia32\math.c +- Library\ia32\initplat.c ++ ver/IA32/ver32.c ++ Library/IA32/math.c ++ Library/IA32/initplat.c + + [sources.ipf] +- ver\ipf\ver64.c +- Library\ipf\math.c +- Library\ipf\initplat.c +- Library\ipf\palproc.s +- Library\ipf\salpal.c ++ ver/IPF/ver64.c ++ Library/IPF/math.c ++ Library/IPF/initplat.c ++ Library/IPF/palproc.s ++ Library/IPF/salpal.c + + [sources.EBC] +- ver\ebc\verEbc.c +- Library\EBC\math.c +- Library\EBC\initplat.c ++ ver/ebc/verEbc.c ++ Library/Ebc/math.c ++ Library/Ebc/initplat.c + + [sources.x64] +- ver\ia32\ver32.c +- Library\ipf\math.c +- Library\ia32\initplat.c ++ ver/IA32/ver32.c ++ Library/IPF/math.c ++ Library/IA32/initplat.c + ++[sources.ARM] ++ ver/ia32/ver32.c ++ Library/IPF/math.c ++ Library/IA32/initplat.c ++ ++[sources.AARCH64] ++ ver/ia32/ver32.c ++ Library/IPF/math.c ++ Library/IA32/initplat.c ++ + [includes.common] + . +- .\Inc +- .\ver +- .\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(EDK_SOURCE)\Foundation\Library\Dxe\Include ++ ./Inc ++ ./ver ++ ./Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(EDK_SOURCE)/Foundation/Library/Dxe/Include + $(DEST_DIR) + + [libraries.common] +@@ -353,4 +363,4 @@ + EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\" + + +- +\ No newline at end of file ++ +Index: inc/shelltypes.h +=================================================================== +--- inc/shelltypes.h (revision 64) ++++ inc/shelltypes.h (working copy) +@@ -36,7 +36,7 @@ + #endif + + #include "Tiano.h" +-#include "linkedlist.h" ++#include "LinkedList.h" + + #include EFI_PROTOCOL_DEFINITION (FileInfo) + #include EFI_PROTOCOL_DEFINITION (SimpleFileSystem) +@@ -183,3 +183,4 @@ + #endif + + #endif ++ +Index: inc/shellenv.h +=================================================================== +--- inc/shellenv.h (revision 64) ++++ inc/shellenv.h (working copy) +@@ -492,3 +492,4 @@ + #endif + + #endif // _SHELLENV_H_ ++ +Index: mm/mm.h +=================================================================== +--- mm/mm.h (revision 64) ++++ mm/mm.h (working copy) +@@ -33,3 +33,4 @@ + } + + #endif ++ +Index: mm/mm.inf +=================================================================== +--- mm/mm.inf (revision 64) ++++ mm/mm.inf (working copy) +@@ -41,23 +41,23 @@ + + [sources.common] + MmStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + mm.c + mm.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: mm/mm.c +=================================================================== +--- mm/mm.c (revision 64) ++++ mm/mm.c (working copy) +@@ -49,18 +49,18 @@ + + VOID + ReadMem ( +- IN EFI_IO_WIDTH Width, +- IN UINT64 Address, +- IN UINTN Size, +- IN VOID *Buffer ++ IN EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_WIDTH Width, ++ IN UINT64 Address, ++ IN UINTN Size, ++ IN VOID *Buffer + ); + + VOID + WriteMem ( +- IN EFI_IO_WIDTH Width, +- IN UINT64 Address, +- IN UINTN Size, +- IN VOID *Buffer ++ IN EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_WIDTH Width, ++ IN UINT64 Address, ++ IN UINTN Size, ++ IN VOID *Buffer + ); + + STATIC +@@ -73,7 +73,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiIomodGuid = EFI_IOMOD_GUID; + SHELL_VAR_CHECK_ITEM IomodCheckList[] = { + { +@@ -134,7 +134,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -146,13 +146,13 @@ + + EFI_STATUS + OldShellParserMM ( +- OUT EFI_IO_WIDTH *Width, +- OUT EFI_ACCESS_TYPE *AccessType, +- OUT UINT64 *Address, +- OUT UINT64 *Value, +- OUT UINTN *Size, +- OUT BOOLEAN *Interactive, +- OUT CHAR16 **ValueStr ++ OUT EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_WIDTH *Width, ++ OUT EFI_ACCESS_TYPE *AccessType, ++ OUT UINT64 *Address, ++ OUT UINT64 *Value, ++ OUT UINTN *Size, ++ OUT BOOLEAN *Interactive, ++ OUT CHAR16 **ValueStr + ); + + EFI_STATUS +@@ -207,12 +207,11 @@ + UINT64 PciEAddress; + UINT64 Value; + UINT32 SegmentNumber; +- EFI_IO_WIDTH Width; ++ EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_WIDTH Width; + EFI_ACCESS_TYPE AccessType; + UINT64 Buffer; + UINTN Index; + UINTN Size; +- CHAR16 *AddressStr; + CHAR16 *ValueStr; + BOOLEAN Complete; + CHAR16 InputStr[80]; +@@ -261,7 +260,7 @@ + if (IS_OLD_SHELL) { + Status = OldShellParserMM (&Width, &AccessType, &Address, &Value, &Size, &Interactive, &ValueStr); + if (EFI_ERROR (Status)) { +- if (-1 == Status) { ++ if ((EFI_STATUS)-1 == Status) { + PrintToken (STRING_TOKEN (STR_HELPINFO_MM_VERBOSEHELP), HiiHandle); + Status = EFI_SUCCESS; + } +@@ -274,7 +273,6 @@ + Width = EfiPciWidthUint8; + Size = 1; + AccessType = EfiMemory; +- AddressStr = NULL; + ValueStr = NULL; + Interactive = TRUE; + +@@ -662,10 +660,10 @@ + + VOID + ReadMem ( +- IN EFI_IO_WIDTH Width, +- IN UINT64 Address, +- IN UINTN Size, +- IN VOID *Buffer ++ IN EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_WIDTH Width, ++ IN UINT64 Address, ++ IN UINTN Size, ++ IN VOID *Buffer + ) + { + do { +@@ -694,10 +692,10 @@ + + VOID + WriteMem ( +- IN EFI_IO_WIDTH Width, +- IN UINT64 Address, +- IN UINTN Size, +- IN VOID *Buffer ++ IN EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_WIDTH Width, ++ IN UINT64 Address, ++ IN UINTN Size, ++ IN VOID *Buffer + ) + { + do { +@@ -750,7 +748,7 @@ + } + + if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'F')) { +- u = u << 4 | c - (c >= 'A' ? 'A' - 10 : '0'); ++ u = (u << 4) | (c - (c >= 'A' ? 'A' - 10 : '0')); + + Find = TRUE; + } else { +@@ -766,13 +764,13 @@ + + EFI_STATUS + OldShellParserMM ( +- OUT EFI_IO_WIDTH *Width, +- OUT EFI_ACCESS_TYPE *AccessType, +- OUT UINT64 *Address, +- OUT UINT64 *Value, +- OUT UINTN *Size, +- OUT BOOLEAN *Interactive, +- OUT CHAR16 **ValueStr ++ OUT EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_WIDTH *Width, ++ OUT EFI_ACCESS_TYPE *AccessType, ++ OUT UINT64 *Address, ++ OUT UINT64 *Value, ++ OUT UINTN *Size, ++ OUT BOOLEAN *Interactive, ++ OUT CHAR16 **ValueStr + ) + /*++ + +Index: drvcfg/drvcfg.h +=================================================================== +--- drvcfg/drvcfg.h (revision 64) ++++ drvcfg/drvcfg.h (working copy) +@@ -33,3 +33,4 @@ + } + + #endif ++ +Index: drvcfg/drvcfg.inf +=================================================================== +--- drvcfg/drvcfg.inf (revision 64) ++++ drvcfg/drvcfg.inf (working copy) +@@ -40,24 +40,24 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + DrvcfgStrings.uni + drvcfg.c + drvcfg.h + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: drvcfg/drvcfg.c +=================================================================== +--- drvcfg/drvcfg.c (revision 64) ++++ drvcfg/drvcfg.c (working copy) +@@ -38,7 +38,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiDrvcfgGuid = EFI_DRVCFG_GUID; + SHELL_VAR_CHECK_ITEM DrvcfgCheckList[] = { + { +@@ -87,7 +87,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: openinfo/openinfo.h +=================================================================== +--- openinfo/openinfo.h (revision 64) ++++ openinfo/openinfo.h (working copy) +@@ -33,3 +33,4 @@ + } + + #endif ++ +Index: openinfo/openinfo.inf +=================================================================== +--- openinfo/openinfo.inf (revision 64) ++++ openinfo/openinfo.inf (working copy) +@@ -41,24 +41,24 @@ + + [sources.common] + OPeninfoStrings.uni +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + openinfo.c + openinfo.h + + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib +Index: openinfo/openinfo.c +=================================================================== +--- openinfo/openinfo.c (revision 64) ++++ openinfo/openinfo.c (working copy) +@@ -36,7 +36,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiOpeninfoGuid = EFI_OPENINFO_GUID; + SHELL_VAR_CHECK_ITEM OpeninfoCheckList[] = { + { +@@ -55,7 +55,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +Index: drivers/drivers.c +=================================================================== +--- drivers/drivers.c (revision 64) ++++ drivers/drivers.c (working copy) +@@ -43,7 +43,7 @@ + // + // Global Variables + // +-EFI_HII_HANDLE HiiHandle; ++STATIC EFI_HII_HANDLE HiiHandle; + EFI_GUID EfiDriversGuid = EFI_DRIVERS_GUID; + SHELL_VAR_CHECK_ITEM DriversCheckList[] = { + { +@@ -68,7 +68,7 @@ + NULL, + 0, + 0, +- 0 ++ (SHELL_VAR_CHECK_FLAG_TYPE) 0 + } + }; + +@@ -133,7 +133,6 @@ + EFI_HANDLE *ControllerHandleBuffer; + UINTN ChildControllerHandleCount; + CHAR16 *ImageName; +- BOOLEAN IsHelp; + SHELL_VAR_CHECK_CODE RetCode; + CHAR16 *Useful; + SHELL_ARG_LIST *Item; +@@ -143,7 +142,6 @@ + Language = NULL; + DriverImageHandleCount = 0; + DriverImageHandleBuffer = NULL; +- IsHelp = FALSE; + ZeroMem (&ChkPck, sizeof (SHELL_VAR_CHECK_PACKAGE)); + + EFI_SHELL_APP_INIT (ImageHandle, SystemTable); +Index: drivers/drivers.h +=================================================================== +--- drivers/drivers.h (revision 64) ++++ drivers/drivers.h (working copy) +@@ -33,3 +33,4 @@ + } + + #endif ++ +Index: drivers/drivers.inf +=================================================================== +--- drivers/drivers.inf (revision 64) ++++ drivers/drivers.inf (working copy) +@@ -40,7 +40,7 @@ + + + [sources.common] +- ..\ShCommonStrings.uni ++ ../ShCommonStrings.uni + DriversStrings.uni + drivers.c + drivers.h +@@ -48,17 +48,17 @@ + + [includes.common] + . +- ..\Inc +- ..\Library +- $(EDK_SOURCE)\Foundation +- $(EDK_SOURCE)\Foundation\Include +- $(EDK_SOURCE)\Foundation\Include\IndustryStandard +- $(EDK_SOURCE)\Foundation\Efi +- $(EDK_SOURCE)\Foundation\Efi\Include +- $(EDK_SOURCE)\Foundation\FrameWork +- $(EDK_SOURCE)\Foundation\FrameWork\Include +- $(EDK_SOURCE)\Foundation\Core\Dxe +- $(DEST_DIR)\ ++ ../Inc ++ ../Library ++ $(EDK_SOURCE)/Foundation ++ $(EDK_SOURCE)/Foundation/Include ++ $(EDK_SOURCE)/Foundation/Include/IndustryStandard ++ $(EDK_SOURCE)/Foundation/Efi ++ $(EDK_SOURCE)/Foundation/Efi/Include ++ $(EDK_SOURCE)/Foundation/FrameWork ++ $(EDK_SOURCE)/Foundation/FrameWork/Include ++ $(EDK_SOURCE)/Foundation/Core/Dxe ++ $(DEST_DIR./ + + [libraries.common] + EfiShellLib -- cgit v1.2.3