summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Martin <olivier.martin@arm.com>2014-01-14 15:31:01 +0000
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>2014-01-14 15:31:01 +0000
commit2405af19936960172d3ad0ae895691bd273a3215 (patch)
treee1483291074aec8d3e8e82a250fff1952e4074f4
parent5511b319f2adcadbff6590380f84537349b0395b (diff)
downloadedk2-2405af19936960172d3ad0ae895691bd273a3215.zip
edk2-2405af19936960172d3ad0ae895691bd273a3215.tar.gz
edk2-2405af19936960172d3ad0ae895691bd273a3215.tar.bz2
EdkShellPkg/ShellR64.patch: Adding missing files from the patch
Some files were missing from the newly generated patch: - Library/Aarch64/efilibplat.h - Library/Arm/efilibplat.h Instructions have been written to correctly generate this patch: https://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPkg/Binaries#EdkShellPkg Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15113 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r--EdkShellPkg/ShellR64.patch13062
1 files changed, 6720 insertions, 6342 deletions
diff --git a/EdkShellPkg/ShellR64.patch b/EdkShellPkg/ShellR64.patch
index d057840..477125e 100644
--- a/EdkShellPkg/ShellR64.patch
+++ b/EdkShellPkg/ShellR64.patch
@@ -1,19 +1,383 @@
-Index: EfiCompress/Compress.h
-===================================================================
---- EfiCompress/Compress.h (revision 64)
-+++ EfiCompress/Compress.h (working copy)
-@@ -57,4 +57,4 @@
+From 6451e0daf7f733a27e1afb3c7ac662a620d8b93b Mon Sep 17 00:00:00 2001
+From: Olivier Martin <olivier.martin@arm.com>
+Date: Tue, 14 Jan 2014 14:43:50 +0000
+Subject: [PATCH] EDK Shell patch to support GCC
+
+---
+ DeviceTree/devicetree.c | 4 +-
+ DeviceTree/devicetree.h | 1 +
+ DeviceTree/devicetree.inf | 28 +--
+ EfiCompress/Compress.h | 2 +-
+ EfiCompress/CompressMain.c | 2 +-
+ EfiCompress/compress.c | 2 +-
+ EfiCompress/compress.inf | 32 +--
+ EfiDecompress/Decompress.c | 8 +-
+ EfiDecompress/Decompress.h | 2 +-
+ EfiDecompress/Decompress.inf | 33 +--
+ IfConfig/IfConfig.c | 6 +-
+ IfConfig/IfConfig.h | 1 +
+ IfConfig/IfConfig.inf | 34 +--
+ IfConfig/ShellNetHelper.h | 1 +
+ IpConfig/IpConfig.c | 4 +-
+ IpConfig/IpConfig.h | 2 +-
+ IpConfig/IpConfig.inf | 29 +--
+ Library/Aarch64/efilibplat.h | 38 ++++
+ Library/Arm/efilibplat.h | 39 ++++
+ Library/CRC.c | 2 +-
+ Library/CRC.h | 4 +-
+ Library/ConsistMapping.c | 2 +-
+ Library/ConsistMapping.h | 4 +-
+ Library/DPath.c | 6 +-
+ Library/DPath.h | 3 +-
+ Library/Data.c | 2 +-
+ Library/Ebc/EfiLibPlat.h | 1 +
+ Library/EfiPart.h | 1 +
+ Library/EfiShellLib.h | 11 +-
+ Library/EfiShellLib.inf | 51 +++--
+ Library/Event.c | 2 +-
+ Library/Event.h | 4 +-
+ Library/FileIO.c | 6 +-
+ Library/FileIO.h | 4 +-
+ Library/Handle.c | 9 +-
+ Library/Handle.h | 1 +
+ Library/HiiSupport.c | 6 +-
+ Library/HiiSupport.h | 1 +
+ Library/IA32/efilibplat.h | 2 +-
+ Library/IO.c | 13 +-
+ Library/IO.h | 4 +-
+ Library/IPF/efilibplat.h | 1 +
+ Library/IPF/libsalpal.h | 2 +-
+ Library/IPF/palproc.h | 1 +
+ Library/Init.c | 2 +-
+ Library/LinkedList.h | 4 +-
+ Library/Lock.c | 2 +-
+ Library/Lock.h | 4 +-
+ Library/Mem.c | 2 +-
+ Library/Mem.h | 4 +-
+ Library/Misc.c | 15 +-
+ Library/Misc.h | 1 +
+ Library/Perf.c | 2 +-
+ Library/RtData.c | 2 +-
+ Library/ShellDebug.c | 2 +-
+ Library/ShellDebug.h | 1 +
+ Library/ShellEnvInt.c | 2 +-
+ Library/ShellEnvInt.h | 4 +-
+ Library/Str.c | 6 +-
+ Library/Str.h | 1 +
+ Library/VarCheck.c | 2 +-
+ Library/VarCheck.h | 3 +-
+ Library/X64/efilibplat.h | 1 +
+ LoadPciRom/LoadPciRom.c | 8 +-
+ LoadPciRom/LoadPciRom.h | 1 +
+ LoadPciRom/LoadPciRom.inf | 28 +--
+ Ping/Ping.c | 27 ++-
+ Ping/Ping.h | 1 +
+ Ping/Ping.inf | 34 +--
+ Shell.inf | 305 +++++++++++++-------------
+ ShellFull.inf | 494 ++++++++++++++++++++++---------------------
+ SmbiosView/EventLogInfo.c | 2 +-
+ SmbiosView/EventLogInfo.h | 1 +
+ SmbiosView/LibSmbios.h | 1 +
+ SmbiosView/LibSmbiosView.c | 10 +-
+ SmbiosView/LibSmbiosView.h | 3 +-
+ SmbiosView/PrintInfo.c | 2 +-
+ SmbiosView/PrintInfo.h | 1 +
+ SmbiosView/QueryTable.c | 2 +-
+ SmbiosView/QueryTable.h | 1 +
+ SmbiosView/Smbios.h | 1 +
+ SmbiosView/Smbiosview.inf | 33 +--
+ SmbiosView/smbiosview.c | 4 +-
+ SmbiosView/smbiosview.h | 1 +
+ TelnetMgmt/TelnetMgmt.c | 4 +-
+ TelnetMgmt/TelnetMgmt.h | 2 +-
+ TelnetMgmt/TelnetMgmt.inf | 29 +--
+ TelnetMgmt/TelnetServer.h | 1 +
+ attrib/attrib.c | 6 +-
+ attrib/attrib.h | 3 +-
+ attrib/attrib.inf | 28 +--
+ cls/cls.c | 4 +-
+ cls/cls.h | 1 +
+ cls/cls.inf | 29 +--
+ comp/comp.c | 2 +-
+ comp/comp.h | 2 +-
+ comp/comp.inf | 31 +--
+ cp/cp.c | 10 +-
+ cp/cp.h | 3 +-
+ cp/cp.inf | 29 +--
+ date/date.c | 10 +-
+ date/date.h | 1 +
+ date/date.inf | 29 +--
+ dblk/dblk.c | 2 +-
+ dblk/dblk.h | 1 +
+ dblk/dblk.inf | 31 +--
+ dblk/efidump.c | 18 +-
+ devices/devices.c | 4 +-
+ devices/devices.h | 1 +
+ devices/devices.inf | 28 +--
+ dmem/MemCommonPart.c | 14 +-
+ dmem/MemCommonPart.h | 2 +-
+ dmem/debug.h | 1 +
+ dmem/dmem.inf | 30 +--
+ dmem/efidump.c | 20 +-
+ dmpstore/dmpstore.c | 4 +-
+ dmpstore/dmpstore.h | 1 +
+ dmpstore/dmpstore.inf | 31 +--
+ drivers/drivers.c | 6 +-
+ drivers/drivers.h | 1 +
+ drivers/drivers.inf | 28 +--
+ drvcfg/drvcfg.c | 4 +-
+ drvcfg/drvcfg.h | 1 +
+ drvcfg/drvcfg.inf | 28 +--
+ drvdiag/drvdiag.c | 4 +-
+ drvdiag/drvdiag.h | 1 +
+ drvdiag/drvdiag.inf | 28 +--
+ edit/edit.inf | 32 +--
+ edit/editor.h | 5 +-
+ edit/editortype.h | 7 +-
+ edit/libEditor.c | 24 +--
+ edit/libFileBuffer.c | 24 ++-
+ edit/libInputBar.c | 26 +--
+ edit/libMenuBar.c | 9 +-
+ edit/libMisc.h | 1 +
+ edit/libStatusBar.c | 11 +-
+ edit/libTitleBar.c | 17 +-
+ edit/libeditor.h | 1 +
+ edit/libfilebuffer.h | 1 +
+ edit/libinputbar.h | 1 +
+ edit/libmenubar.h | 1 +
+ edit/libstatusbar.h | 1 +
+ edit/libtitlebar.h | 1 +
+ edit/main.c | 30 +--
+ err/DebugMask.h | 1 +
+ err/err.c | 12 +-
+ err/err.h | 2 +-
+ err/err.inf | 31 +--
+ guid/guid.c | 4 +-
+ guid/guid.h | 2 +-
+ guid/guid.inf | 33 +--
+ hexedit/heditor.h | 5 +-
+ hexedit/heditortype.h | 7 +-
+ hexedit/hexedit.inf | 31 +--
+ hexedit/libBufferImage.c | 37 ++--
+ hexedit/libEditor.c | 33 +--
+ hexedit/libInputBar.c | 11 +-
+ hexedit/libMemImage.c | 8 +-
+ hexedit/libMenuBar.c | 13 +-
+ hexedit/libMisc.h | 3 +-
+ hexedit/libStatusBar.c | 1 +
+ hexedit/libTitleBar.c | 24 ++-
+ hexedit/libbufferimage.h | 1 +
+ hexedit/libclipboard.h | 1 +
+ hexedit/libdiskimage.c | 17 +-
+ hexedit/libdiskimage.h | 1 +
+ hexedit/libeditor.h | 1 +
+ hexedit/libfileimage.h | 1 +
+ hexedit/libinputbar.h | 1 +
+ hexedit/libmemimage.h | 1 +
+ hexedit/libmenubar.h | 3 +-
+ hexedit/libstatusbar.h | 1 +
+ hexedit/libtitlebar.h | 1 +
+ hexedit/main.c | 78 +++----
+ inc/shellenv.h | 1 +
+ inc/shelltypes.h | 3 +-
+ load/load.c | 2 +-
+ load/load.h | 1 +
+ load/load.inf | 29 +--
+ ls/ls.c | 11 +-
+ ls/ls.h | 3 +-
+ ls/ls.inf | 28 +--
+ mem/MemCommonPart.c | 14 +-
+ mem/MemCommonPart.h | 2 +-
+ mem/debug.h | 1 +
+ mem/efidump.c | 20 +-
+ mem/mem.inf | 30 +--
+ memmap/memmap.c | 6 +-
+ memmap/memmap.h | 1 +
+ memmap/memmap.inf | 28 +--
+ mkdir/mkdir.c | 4 +-
+ mkdir/mkdir.h | 3 +-
+ mkdir/mkdir.inf | 28 +--
+ mm/mm.c | 72 +++----
+ mm/mm.h | 1 +
+ mm/mm.inf | 28 +--
+ mode/mode.c | 2 +-
+ mode/mode.h | 1 +
+ mode/mode.inf | 28 +--
+ mount/mount.c | 4 +-
+ mount/mount.h | 1 +
+ mount/mount.inf | 28 +--
+ mv/mv.c | 4 +-
+ mv/mv.h | 2 +-
+ mv/mv.inf | 28 +--
+ newshell/FakeHii.c | 6 +-
+ newshell/FakeHii.h | 1 +
+ newshell/init.c | 18 +-
+ newshell/nshell.h | 3 +-
+ newshell/nshell.inf | 34 +--
+ openinfo/openinfo.c | 4 +-
+ openinfo/openinfo.h | 1 +
+ openinfo/openinfo.inf | 28 +--
+ pci/pci.c | 19 +-
+ pci/pci.h | 3 +-
+ pci/pci.inf | 28 +--
+ pci/pci_class.c | 2 +-
+ pci/pci_class.h | 3 +-
+ reset/reset.c | 2 +-
+ reset/reset.h | 1 +
+ reset/reset.inf | 28 +--
+ rm/rm.c | 2 +-
+ rm/rm.h | 1 +
+ rm/rm.inf | 28 +--
+ sermode/sermode.c | 8 +-
+ sermode/sermode.h | 1 +
+ sermode/sermode.inf | 28 +--
+ shellenv/Connect.c | 20 +-
+ shellenv/ConsoleProxy.c | 6 +-
+ shellenv/batch.c | 15 +-
+ shellenv/conio.c | 2 +-
+ shellenv/dprot.c | 8 +-
+ shellenv/echo.c | 2 +-
+ shellenv/exec.c | 18 +-
+ shellenv/for.c | 7 +-
+ shellenv/help.c | 2 +-
+ shellenv/if.c | 3 -
+ shellenv/init.c | 2 +-
+ shellenv/map.c | 16 +-
+ shellenv/parsecmd.h | 3 +-
+ shellenv/pause.c | 2 +-
+ shellenv/protid.c | 22 +-
+ shellenv/shelle.h | 1 +
+ shellenv/shellenvguid.h | 1 +
+ shellenv/var.c | 6 +-
+ stall/stall.c | 2 +-
+ stall/stall.h | 1 +
+ stall/stall.inf | 28 +--
+ time/time.c | 10 +-
+ time/time.h | 1 +
+ time/time.inf | 28 +--
+ touch/touch.c | 2 +-
+ touch/touch.h | 2 +-
+ touch/touch.inf | 29 +--
+ type/type.c | 4 +-
+ type/type.h | 1 +
+ type/type.inf | 28 +--
+ tzone/timezone.inf | 32 +--
+ tzone/tzone.c | 4 +-
+ tzone/tzone.h | 1 +
+ unload/unload.c | 18 +-
+ unload/unload.h | 1 +
+ unload/unload.inf | 29 +--
+ ver/Ebc/verEbc.c | 2 +-
+ ver/Ver.inf | 36 ++--
+ ver/ver.c | 2 +-
+ ver/ver.h | 1 +
+ vol/Vol.inf | 28 +--
+ vol/vol.c | 4 +-
+ vol/vol.h | 1 +
+ 270 files changed, 1985 insertions(+), 1610 deletions(-)
+ create mode 100644 Library/Aarch64/efilibplat.h
+ create mode 100644 Library/Arm/efilibplat.h
+
+diff --git a/DeviceTree/devicetree.c b/DeviceTree/devicetree.c
+index 147e2cb..77e3cf4 100644
+--- a/DeviceTree/devicetree.c
++++ b/DeviceTree/devicetree.c
+@@ -36,7 +36,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM DevicetreeCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+diff --git a/DeviceTree/devicetree.h b/DeviceTree/devicetree.h
+index c452fc7..07bb939 100644
+--- a/DeviceTree/devicetree.h
++++ b/DeviceTree/devicetree.h
+@@ -32,3 +32,4 @@ Revision History
+ 0xf21044af, 0xeef6, 0x4d58, 0xb4, 0x56, 0x32, 0x86, 0xa0, 0x2b, 0x7c, 0x49 \
+ }
+ #endif
++
+diff --git a/DeviceTree/devicetree.inf b/DeviceTree/devicetree.inf
+index a86a1a0..7adc097 100644
+--- a/DeviceTree/devicetree.inf
++++ b/DeviceTree/devicetree.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
+
+
+ [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
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
+
+ [nmake.common]
+ IMAGE_ENTRY_POINT=DevicetreeMain
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+diff --git a/EfiCompress/Compress.h b/EfiCompress/Compress.h
+index 6ce2bfc..4e8313f 100644
+--- a/EfiCompress/Compress.h
++++ b/EfiCompress/Compress.h
+@@ -57,4 +57,4 @@ Returns:
--*/
-#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 @@
+diff --git a/EfiCompress/CompressMain.c b/EfiCompress/CompressMain.c
+index 3edb17e..082046e 100644
+--- a/EfiCompress/CompressMain.c
++++ b/EfiCompress/CompressMain.c
+@@ -50,7 +50,7 @@ SHELL_VAR_CHECK_ITEM CompressCheckList[] = {
NULL,
0,
0,
@@ -22,11 +386,24 @@ Index: EfiCompress/CompressMain.c
}
};
-Index: EfiCompress/compress.inf
-===================================================================
---- EfiCompress/compress.inf (revision 64)
-+++ EfiCompress/compress.inf (working copy)
-@@ -25,7 +25,7 @@
+diff --git a/EfiCompress/compress.c b/EfiCompress/compress.c
+index e21c1f6..012bbef 100644
+--- a/EfiCompress/compress.c
++++ b/EfiCompress/compress.c
+@@ -262,7 +262,7 @@ STATIC UINT32 mBufSiz = 0, mOutputPos, mOutputMask, mSubBitBuf, mCrc;
+ 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;
+diff --git a/EfiCompress/compress.inf b/EfiCompress/compress.inf
+index 2e62fbf..f3194b5 100644
+--- a/EfiCompress/compress.inf
++++ b/EfiCompress/compress.inf
+@@ -25,7 +25,7 @@ FILE_GUID = A6A236DB-F3FB-4f7f-93BC-0AF7DAA583B9
COMPONENT_TYPE = APPLICATION
[sources.common]
@@ -35,7 +412,7 @@ Index: EfiCompress/compress.inf
CompressStrings.uni
compressMain.c
compress.c
-@@ -34,17 +34,17 @@
+@@ -34,17 +34,17 @@ compress.h
[includes.common]
.
@@ -64,15 +441,15 @@ Index: EfiCompress/compress.inf
[libraries.common]
EfiShellLib
-@@ -64,11 +64,13 @@
+@@ -64,11 +64,13 @@ compress.h
# we will specify some additional DEFINEs on the compile command line.
#
[nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeCompress
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeCompress
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeCompress
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
@@ -82,24 +459,29 @@ Index: EfiCompress/compress.inf
\ No newline at end of file
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: EfiCompress/compress.c
-===================================================================
---- EfiCompress/compress.c (revision 64)
-+++ EfiCompress/compress.c (working copy)
-@@ -262,7 +262,7 @@
- STATIC UINT32 mCompSize, mOrigSize;
+diff --git a/EfiDecompress/Decompress.c b/EfiDecompress/Decompress.c
+index 918f673..2ee0404 100644
+--- a/EfiDecompress/Decompress.c
++++ b/EfiDecompress/Decompress.c
+@@ -22,7 +22,7 @@ Revision History
+ --*/
- 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];
+ #include "EfiShellLib.h"
+-#include "decompress.h"
++#include "Decompress.h"
- 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 @@
+ extern UINT8 STRING_ARRAY_NAME[];
+
+@@ -31,7 +31,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ #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 @@ SHELL_VAR_CHECK_ITEM DecompressCheckList[] = {
NULL,
0,
0,
@@ -108,28 +490,244 @@ Index: load/load.c
}
};
-Index: load/load.h
-===================================================================
---- load/load.h (revision 64)
-+++ load/load.h (working copy)
-@@ -33,3 +33,4 @@
+@@ -192,7 +192,7 @@ Returns:
+ //
+ //
+ //
+- 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;
+diff --git a/EfiDecompress/Decompress.h b/EfiDecompress/Decompress.h
+index abfae65..3d4520c 100644
+--- a/EfiDecompress/Decompress.h
++++ b/EfiDecompress/Decompress.h
+@@ -29,4 +29,4 @@ Revision History
+ 0xe15963a9, 0xa05a, 0x480e, 0x91, 0x49, 0x32, 0xe9, 0x24, 0x5d, 0x98, 0xcb \
+ }
+
+-#endif
+\ No newline at end of file
++#endif
+diff --git a/EfiDecompress/Decompress.inf b/EfiDecompress/Decompress.inf
+index f955220..7b2ff3d 100644
+--- a/EfiDecompress/Decompress.inf
++++ b/EfiDecompress/Decompress.inf
+@@ -25,7 +25,7 @@ FILE_GUID = D9D42564-071C-4d73-8DB0-43C55C62DC4C
+ COMPONENT_TYPE = APPLICATION
+
+ [sources.common]
+-..\ShCommonStrings.uni
++../ShCommonStrings.uni
+ DecompressStrings.uni
+ decompress.c
+ decompress.h
+@@ -33,17 +33,17 @@ decompress.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
+@@ -63,11 +63,14 @@ decompress.h
+ # we will specify some additional DEFINEs on the compile command line.
+ #
+ [nmake.common]
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeDecompress
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
+-
+-
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
++
+\ No newline at end of file
+diff --git a/IfConfig/IfConfig.c b/IfConfig/IfConfig.c
+index 07cedc2..52e1add 100644
+--- a/IfConfig/IfConfig.c
++++ b/IfConfig/IfConfig.c
+@@ -29,7 +29,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ #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 @@ SHELL_VAR_CHECK_ITEM IfConfigCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
}
+ };
+
+@@ -669,7 +669,7 @@ Returns:
+ Status = BS->LocateProtocol (
+ &gEfiHiiConfigRoutingProtocolGuid,
+ NULL,
+- &mHiiConfigRouting
++ (VOID**)&mHiiConfigRouting
+ );
+ if (EFI_ERROR (Status)) {
+ return EFI_NOT_FOUND;
+diff --git a/IfConfig/IfConfig.h b/IfConfig/IfConfig.h
+index 4a9d3c5..b8f044e 100644
+--- a/IfConfig/IfConfig.h
++++ b/IfConfig/IfConfig.h
+@@ -60,3 +60,4 @@ typedef struct {
+ } ARP_REQUEST;
#endif
+
-Index: load/load.inf
-===================================================================
---- load/load.inf (revision 64)
-+++ load/load.inf (working copy)
-@@ -39,23 +39,23 @@
+diff --git a/IfConfig/IfConfig.inf b/IfConfig/IfConfig.inf
+index b2e4964..d8c5c23 100644
+--- a/IfConfig/IfConfig.inf
++++ b/IfConfig/IfConfig.inf
+@@ -25,7 +25,7 @@ FILE_GUID = 6394CF3D-D3DC-4f69-926D-AF9FFE59F922
COMPONENT_TYPE = APPLICATION
[sources.common]
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- LoadStrings.uni
- load.c
-
+ IfConfigStrings.uni
+ IfConfig.c
+ IfConfig.h
+@@ -33,30 +33,32 @@ COMPONENT_TYPE = APPLICATION
+ 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)
+ IMAGE_ENTRY_POINT=IfConfig
+- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
++ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+diff --git a/IfConfig/ShellNetHelper.h b/IfConfig/ShellNetHelper.h
+index 9a33d3f..87e6886 100644
+--- a/IfConfig/ShellNetHelper.h
++++ b/IfConfig/ShellNetHelper.h
+@@ -87,3 +87,4 @@ ShellDestroyServiceChild (
+ IN EFI_HANDLE ChildHandle
+ );
+ #endif
++
+diff --git a/IpConfig/IpConfig.c b/IpConfig/IpConfig.c
+index 0c3e4c3..474e5f1 100644
+--- a/IpConfig/IpConfig.c
++++ b/IpConfig/IpConfig.c
+@@ -39,7 +39,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM IpconfigCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+diff --git a/IpConfig/IpConfig.h b/IpConfig/IpConfig.h
+index 1806435..5c975a9 100644
+--- a/IpConfig/IpConfig.h
++++ b/IpConfig/IpConfig.h
+@@ -29,4 +29,4 @@ Revision History
+ 0x8252915c, 0xf1e9, 0x435c, 0x81, 0x91, 0xad, 0x2f, 0x82, 0x62, 0x23, 0x73 \
+ }
+
+-#endif
+\ No newline at end of file
++#endif
+diff --git a/IpConfig/IpConfig.inf b/IpConfig/IpConfig.inf
+index bc8271c..8cb1e0f 100644
+--- a/IpConfig/IpConfig.inf
++++ b/IpConfig/IpConfig.inf
+@@ -25,24 +25,24 @@ FILE_GUID = 1D73AC03-AF05-44b3-B21E-93A174893FA6
+ COMPONENT_TYPE = APPLICATION
+
+ [sources.common]
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ IpConfigStrings.uni
+ IpConfig.c
+ IpConfig.h
+
[includes.common]
.
- ..\Inc
@@ -157,32 +755,1010 @@ Index: load/load.inf
[libraries.common]
EfiShellLib
-@@ -70,6 +70,11 @@
+@@ -56,9 +56,12 @@ COMPONENT_TYPE = APPLICATION
+
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeLoad
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeIpConfig
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-+
+
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: drvdiag/drvdiag.c
-===================================================================
---- drvdiag/drvdiag.c (revision 64)
-+++ drvdiag/drvdiag.c (working copy)
-@@ -41,7 +41,7 @@
+diff --git a/Library/Aarch64/efilibplat.h b/Library/Aarch64/efilibplat.h
+new file mode 100644
+index 0000000..185c8b7
+--- /dev/null
++++ b/Library/Aarch64/efilibplat.h
+@@ -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
++
+diff --git a/Library/Arm/efilibplat.h b/Library/Arm/efilibplat.h
+new file mode 100644
+index 0000000..791018d
+--- /dev/null
++++ b/Library/Arm/efilibplat.h
+@@ -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
++
++
+diff --git a/Library/CRC.c b/Library/CRC.c
+index ce5387b..ebbdf70 100644
+--- a/Library/CRC.c
++++ b/Library/CRC.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ UINT32 CRCTable[256] = {
+ 0x00000000,
+diff --git a/Library/CRC.h b/Library/CRC.h
+index 326a5e1..db1f765 100644
+--- a/Library/CRC.h
++++ b/Library/CRC.h
+@@ -53,4 +53,6 @@ CalculateCrc (
+ UINTN Size
+ );
+
+-#endif
+\ No newline at end of file
++#endif
++
++
+diff --git a/Library/ConsistMapping.c b/Library/ConsistMapping.c
+index b70fa06..61eda8b 100644
+--- a/Library/ConsistMapping.c
++++ b/Library/ConsistMapping.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ MTD_NAME mMTDName[] = {
+ {
+diff --git a/Library/ConsistMapping.h b/Library/ConsistMapping.h
+index bc8d6f0..d520f31 100644
+--- a/Library/ConsistMapping.h
++++ b/Library/ConsistMapping.h
+@@ -79,4 +79,6 @@ DevicePathConsistMappingCompare (
+ IN VOID *Buffer2
+ );
+
+-#endif
+\ No newline at end of file
++#endif
++
++
+diff --git a/Library/DPath.c b/Library/DPath.c
+index f0974ac..73086d7 100644
+--- a/Library/DPath.c
++++ b/Library/DPath.c
+@@ -20,7 +20,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ EFI_GUID mEfiDevicePathMessagingUartFlowControlGuid = DEVICE_PATH_MESSAGING_UART_FLOW_CONTROL;
+
+@@ -1468,7 +1468,7 @@ Returns:
+
+ Status = LibLocateProtocol (
+ &gEfiDevicePathToTextProtocolGuid,
+- &DevPathToText
++ (VOID**)&DevPathToText
+ );
+ if (!EFI_ERROR (Status)) {
+ ToText = DevPathToText->ConvertDevicePathToText (
+@@ -1766,7 +1766,7 @@ Returns:
+ Status = BS->HandleProtocol (
+ Device,
+ Protocol,
+- Interface
++ (VOID**)Interface
+ );
+ }
+ }
+diff --git a/Library/DPath.h b/Library/DPath.h
+index 68da82b..0f2a33f 100644
+--- a/Library/DPath.h
++++ b/Library/DPath.h
+@@ -24,7 +24,7 @@ Revision History
+ #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 @@ GetNameGuidFromFwVolDevicePathNode (
+ );
+
+ #endif
++
+diff --git a/Library/Data.c b/Library/Data.c
+index d2ffe4a..979b3dd 100644
+--- a/Library/Data.c
++++ b/Library/Data.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
//
- // Global Variables
+ // ShellLibInitialized - TRUE once InitializeShellLib() is called for the first time
+diff --git a/Library/Ebc/EfiLibPlat.h b/Library/Ebc/EfiLibPlat.h
+index 922c881..e4a8771 100644
+--- a/Library/Ebc/EfiLibPlat.h
++++ b/Library/Ebc/EfiLibPlat.h
+@@ -44,3 +44,4 @@ Returns:
+ ;
+
+ #define MIN_ALIGNMENT_SIZE 8
++
+diff --git a/Library/EfiPart.h b/Library/EfiPart.h
+index a62cd15..e59ae77 100644
+--- a/Library/EfiPart.h
++++ b/Library/EfiPart.h
+@@ -56,3 +56,4 @@ typedef struct {
+ #pragma pack()
+
+ #endif
++
+diff --git a/Library/EfiShellLib.h b/Library/EfiShellLib.h
+index 6243d1d..e0ffe43 100644
+--- a/Library/EfiShellLib.h
++++ b/Library/EfiShellLib.h
+@@ -25,7 +25,7 @@ Revision History
+ #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 @@ Revision History
+ #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 @@ Revision History
+ #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 @@ Revision History
+ #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 @@ Revision History
+ #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 @@ LibGetControllerName (
+ );
+
+ #endif
++
+diff --git a/Library/EfiShellLib.inf b/Library/EfiShellLib.inf
+index d450f9d..a63406c 100644
+--- a/Library/EfiShellLib.inf
++++ b/Library/EfiShellLib.inf
+@@ -45,34 +45,42 @@ COMPONENT_TYPE = LIBRARY
+ 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,7 @@ COMPONENT_TYPE = LIBRARY
+ EfiGuidLib
+ EdkGuidLib
+
++[libraries.ARM]
++ CompilerIntrinsicsLib, CompilerIntrinsicsLib
++
+ [nmake.common]
+diff --git a/Library/Event.c b/Library/Event.c
+index 4929e4b..a0cbdc2 100644
+--- a/Library/Event.c
++++ b/Library/Event.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ EFI_EVENT
+ LibCreateProtocolNotifyEvent (
+diff --git a/Library/Event.h b/Library/Event.h
+index b8df801..8e0e718 100644
+--- a/Library/Event.h
++++ b/Library/Event.h
+@@ -50,4 +50,6 @@ WaitForEventWithTimeout (
+ OUT EFI_INPUT_KEY *Key
+ );
+
+-#endif
+\ No newline at end of file
++#endif
++
++
+diff --git a/Library/FileIO.c b/Library/FileIO.c
+index 40c67d1..8820c52 100644
+--- a/Library/FileIO.c
++++ b/Library/FileIO.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ typedef struct _PATH_COMPONENTS {
+ CHAR16 *Name;
+@@ -719,7 +719,6 @@ LibSplitFsAndPath (
+ IN OUT CHAR16 **Path
+ )
+ {
+- EFI_STATUS Status;
+ CHAR16 *p;
+ UINTN Size;
+
+@@ -728,7 +727,6 @@ LibSplitFsAndPath (
+
+ *Fs = NULL;
+ *Path = NULL;
+- Status = EFI_SUCCESS;
+
+ p = AbPath;
+ while (*p) {
+@@ -1017,13 +1015,11 @@ Return:
+ 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);
+diff --git a/Library/FileIO.h b/Library/FileIO.h
+index bb07d91..e568e17 100644
+--- a/Library/FileIO.h
++++ b/Library/FileIO.h
+@@ -208,4 +208,6 @@ CloseSimpleReadFile (
+ IN SIMPLE_READ_FILE SimpleReadHandle
+ );
+
+-#endif
+\ No newline at end of file
++#endif
++
++
+diff --git a/Library/Handle.c b/Library/Handle.c
+index 25da2a1..45e623c 100644
+--- a/Library/Handle.c
++++ b/Library/Handle.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ EFI_STATUS
+ LibLocateHandle (
+@@ -131,7 +131,6 @@ Returns:
+ 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 @@ Returns:
+ PreviousNodeIsHardDriveDevicePath = FALSE;
+
+ DevPath = DevicePath;
+- Start = DevPath;
+ //
+ // Check for end of device path type
+ //
+@@ -796,14 +794,12 @@ LibScanHandleDatabase (
+ 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 @@ LibScanHandleDatabase (
+
+ if (ControllerHandle != NULL && ControllerHandleIndex != NULL && (*HandleBuffer)[HandleIndex] == ControllerHandle) {
+ *ControllerHandleIndex = (UINT32) HandleIndex;
+- ControllerHandleIndexValid = TRUE;
+ }
+
+ }
+@@ -1305,7 +1300,7 @@ Returns:
+ Status = BS->HandleProtocol (
+ Handles[Index],
+ ProtocolGuid,
+- Interface
++ (VOID**)Interface
+ );
+
+ if (!EFI_ERROR (Status)) {
+diff --git a/Library/Handle.h b/Library/Handle.h
+index 40ad40b..010e2cf 100644
+--- a/Library/Handle.h
++++ b/Library/Handle.h
+@@ -161,3 +161,4 @@ ShellGetHandleNum (
+ );
+
+ #endif
++
+diff --git a/Library/HiiSupport.c b/Library/HiiSupport.c
+index bce645b..5f70712 100644
+--- a/Library/HiiSupport.c
++++ b/Library/HiiSupport.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ #if (EFI_SPECIFICATION_VERSION >= 0x0002000A)
+
+@@ -56,11 +56,11 @@ Returns:
+ 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;
+ }
+diff --git a/Library/HiiSupport.h b/Library/HiiSupport.h
+index b04c443..bfeb077 100644
+--- a/Library/HiiSupport.h
++++ b/Library/HiiSupport.h
+@@ -142,3 +142,4 @@ LibGetString (
+ ;
+
+ #endif
++
+diff --git a/Library/IA32/efilibplat.h b/Library/IA32/efilibplat.h
+index 4e58f50..a6eb87f 100644
+--- a/Library/IA32/efilibplat.h
++++ b/Library/IA32/efilibplat.h
+@@ -34,4 +34,4 @@ InitializeLibPlatform (
+
+ #define MIN_ALIGNMENT_SIZE 4
+
+-#endif
+\ No newline at end of file
++#endif
+diff --git a/Library/IO.c b/Library/IO.c
+index 81f26fd..b976e32 100644
+--- a/Library/IO.c
++++ b/Library/IO.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ #define PRINT_STRING_LEN 1024
+ #define PRINT_ITEM_BUFFER_LEN 100
+@@ -86,8 +86,8 @@ typedef struct _pstate {
+ typedef struct {
+ BOOLEAN PageBreak;
+ BOOLEAN AutoWrap;
+- INTN MaxRow;
+- INTN MaxColumn;
++ UINTN MaxRow;
++ UINTN MaxColumn;
+ INTN InitRow;
+ INTN Row;
+ INTN Column;
+@@ -1575,7 +1575,7 @@ Returns:
+ {
+ BOOLEAN Done;
+ UINTN Column;
+- INTN Row;
++ UINTN Row;
+ UINTN StartColumn;
+ UINTN Update;
+ UINTN Delete;
+@@ -1769,7 +1769,7 @@ Returns:
+ //
+ // 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 @@ LibGetPageBreak (
+ return mPrintMode.PageBreak;
+ }
+
++#if 0
+ STATIC
+-
+ BOOLEAN
+ GetOutputPause (
+ VOID
+@@ -1937,6 +1937,7 @@ GetOutputPause (
+ {
+ return mPrintMode.OutputPause;
+ }
++#endif
+
+ INTN
+ DbgPrint (
+diff --git a/Library/IO.h b/Library/IO.h
+index 7469c32..6dfc743 100644
+--- a/Library/IO.h
++++ b/Library/IO.h
+@@ -157,4 +157,6 @@ LibGetPageBreak (
+ );
+
+
+-#endif
+\ No newline at end of file
++#endif
++
++
+diff --git a/Library/IPF/efilibplat.h b/Library/IPF/efilibplat.h
+index 90659b4..aad0dd0 100644
+--- a/Library/IPF/efilibplat.h
++++ b/Library/IPF/efilibplat.h
+@@ -35,3 +35,4 @@ InitializeLibPlatform (
+ #define MIN_ALIGNMENT_SIZE 8
+
+ #endif
++
+diff --git a/Library/IPF/libsalpal.h b/Library/IPF/libsalpal.h
+index fc25995..1461669 100644
+--- a/Library/IPF/libsalpal.h
++++ b/Library/IPF/libsalpal.h
+@@ -74,4 +74,4 @@ LibSalProc (
+ IN UINT64 Arg8
+ );
+
+-#endif
+\ No newline at end of file
++#endif
+diff --git a/Library/IPF/palproc.h b/Library/IPF/palproc.h
+index 6d1edf8..ea426bf 100644
+--- a/Library/IPF/palproc.h
++++ b/Library/IPF/palproc.h
+@@ -58,3 +58,4 @@
+ #define PAL_MC_REGISTER_MEM 0x001b
+
+ #endif // _PALPROC_H
++
+diff --git a/Library/Init.c b/Library/Init.c
+index 3ef0c8e..e791ff1 100644
+--- a/Library/Init.c
++++ b/Library/Init.c
+@@ -20,7 +20,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ extern EFI_UNICODE_COLLATION_PROTOCOL LibStubUnicodeInterface;
+
+diff --git a/Library/LinkedList.h b/Library/LinkedList.h
+index d39e5a3..0c82b61 100644
+--- a/Library/LinkedList.h
++++ b/Library/LinkedList.h
+@@ -77,11 +77,10 @@ typedef struct _EFI_LIST_ENTRY {
+ }
+
+ #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 @@ typedef struct _EFI_LIST_ENTRY {
+ // A lock structure
//
+ #endif
++
+diff --git a/Library/Lock.c b/Library/Lock.c
+index 8a40db5..b3f9bad 100644
+--- a/Library/Lock.c
++++ b/Library/Lock.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ VOID
+ InitializeLock (
+diff --git a/Library/Lock.h b/Library/Lock.h
+index 9e35b92..bd5304e 100644
+--- a/Library/Lock.h
++++ b/Library/Lock.h
+@@ -45,4 +45,6 @@ ReleaseLock (
+ IN FLOCK *Lock
+ );
+
+-#endif
+\ No newline at end of file
++#endif
++
++
+diff --git a/Library/Mem.c b/Library/Mem.c
+index f82cb52..9675b52 100644
+--- a/Library/Mem.c
++++ b/Library/Mem.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ VOID
+ SetMem (
+diff --git a/Library/Mem.h b/Library/Mem.h
+index bca1e1d..1e0b331 100644
+--- a/Library/Mem.h
++++ b/Library/Mem.h
+@@ -73,4 +73,6 @@ ZeroMem (
+ IN UINTN Size
+ );
+
+-#endif
+\ No newline at end of file
++#endif
++
++
+diff --git a/Library/Misc.c b/Library/Misc.c
+index 1564c49..e3204ff 100644
+--- a/Library/Misc.c
++++ b/Library/Misc.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ #if (PLATFORM == NT32)
+ #define LOCAL_EFI_WIN_NT_THUNK_PROTOCOL_GUID \
+@@ -348,7 +348,7 @@ Returns:
+ 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 @@ Returns:
+ Status = BS->HandleProtocol (
+ Image->DeviceHandle,
+ &gEfiFirmwareVolumeProtocolGuid,
+- &FV
++ (VOID**)&FV
+ );
+ if (!EFI_ERROR (Status)) {
+ Status = FV->ReadSection (
+@@ -1192,7 +1192,7 @@ Returns:
+ Status = BS->HandleProtocol (
+ Image->DeviceHandle,
+ &gEfiFirmwareVolume2ProtocolGuid,
+- &FV2
++ (VOID**)&FV2
+ );
+ if (!EFI_ERROR (Status)) {
+ Status = FV2->ReadSection (
+@@ -1339,7 +1339,7 @@ LibCmdGetStringByToken (
+ {
+ EFI_STATUS Status;
+ CHAR16 *String;
+- EFI_HII_HANDLE HiiHandle;
++ STATIC EFI_HII_HANDLE HiiHandle;
+
+ ASSERT (Str);
+
+@@ -1730,6 +1730,8 @@ Returns:
+ 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 @@ Returns:
+ }
+
+ return Status;
+-}
+\ No newline at end of file
++}
++
+diff --git a/Library/Misc.h b/Library/Misc.h
+index 7a99186..a7a6825 100644
+--- a/Library/Misc.h
++++ b/Library/Misc.h
+@@ -258,3 +258,4 @@ LibGetExitCode (
+ );
+
+ #endif
++
+diff --git a/Library/Perf.c b/Library/Perf.c
+index 43e09ea..87c4113 100644
+--- a/Library/Perf.c
++++ b/Library/Perf.c
+@@ -19,7 +19,7 @@ Abstract:
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ #include EFI_PROTOCOL_DEFINITION (Performance)
+
+diff --git a/Library/RtData.c b/Library/RtData.c
+index af55cb4..145e933 100644
+--- a/Library/RtData.c
++++ b/Library/RtData.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ //
+ // RT - pointer to the runtime table
+diff --git a/Library/ShellDebug.c b/Library/ShellDebug.c
+index b31ef06..c8b93d5 100644
+--- a/Library/ShellDebug.c
++++ b/Library/ShellDebug.c
+@@ -19,7 +19,7 @@ Abstract:
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+ #include EFI_PROTOCOL_DEFINITION (DebugAssert)
+
+ EFI_DEBUG_ASSERT_PROTOCOL *mDebugAssert = NULL;
+diff --git a/Library/ShellDebug.h b/Library/ShellDebug.h
+index 039197e..aedb3fa 100644
+--- a/Library/ShellDebug.h
++++ b/Library/ShellDebug.h
+@@ -99,3 +99,4 @@ EFIDebugVariable (
+ );
+ #endif
+
++
+diff --git a/Library/ShellEnvInt.c b/Library/ShellEnvInt.c
+index b99d973..53de481 100644
+--- a/Library/ShellEnvInt.c
++++ b/Library/ShellEnvInt.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ EFI_STATUS
+ ShellExecute (
+diff --git a/Library/ShellEnvInt.h b/Library/ShellEnvInt.h
+index 4182dff..653f997 100644
+--- a/Library/ShellEnvInt.h
++++ b/Library/ShellEnvInt.h
+@@ -196,4 +196,6 @@ ShellGetHandleNum (
+ VOID
+ );
+
+-#endif
+\ No newline at end of file
++#endif
++
++
+diff --git a/Library/Str.c b/Library/Str.c
+index ca0c76b..d881dae 100644
+--- a/Library/Str.c
++++ b/Library/Str.c
+@@ -22,7 +22,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ INTN
+ StrCmp (
+@@ -421,7 +421,7 @@ Returns:
+ 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 @@ Returns:
+ 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;
+ }
+
+diff --git a/Library/Str.h b/Library/Str.h
+index 3f73bc5..7b01848 100644
+--- a/Library/Str.h
++++ b/Library/Str.h
+@@ -248,3 +248,4 @@ LibStubStrUpr (
+ );
+
+ #endif
++
+diff --git a/Library/VarCheck.c b/Library/VarCheck.c
+index 53597ff..1abec9d 100644
+--- a/Library/VarCheck.c
++++ b/Library/VarCheck.c
+@@ -21,7 +21,7 @@ Revision History
+
+ --*/
+
+-#include "EfiShelllib.h"
++#include "EfiShellLib.h"
+
+ VOID
+ LibCheckVarFreeVarList (
+diff --git a/Library/VarCheck.h b/Library/VarCheck.h
+index bc1f412..d2bfa66 100644
+--- a/Library/VarCheck.h
++++ b/Library/VarCheck.h
+@@ -41,7 +41,7 @@ typedef enum {
+ 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 @@ LibGetErrRedirFilename (
+ );
+
+ #endif
++
+diff --git a/Library/X64/efilibplat.h b/Library/X64/efilibplat.h
+index 90659b4..aad0dd0 100644
+--- a/Library/X64/efilibplat.h
++++ b/Library/X64/efilibplat.h
+@@ -35,3 +35,4 @@ InitializeLibPlatform (
+ #define MIN_ALIGNMENT_SIZE 8
+
+ #endif
++
+diff --git a/LoadPciRom/LoadPciRom.c b/LoadPciRom/LoadPciRom.c
+index f8854b7..99fd99d 100644
+--- a/LoadPciRom/LoadPciRom.c
++++ b/LoadPciRom/LoadPciRom.c
+@@ -24,7 +24,7 @@ Revision History
+
+ #include "EfiShellLib.h"
+ #include "LoadPciRom.h"
+-#include "Pci22.h"
++#include "pci22.h"
+
+ extern UINT8 STRING_ARRAY_NAME[];
+
+@@ -56,7 +56,7 @@ LoadEfiDriversFromRomImage (
+ );
+
+ EFI_HANDLE gMyImageHandle;
-EFI_HII_HANDLE HiiHandle;
+STATIC EFI_HII_HANDLE HiiHandle;
- EFI_GUID EfiDrvdiagGuid = EFI_DRVDIAG_GUID;
- SHELL_VAR_CHECK_ITEM DrvdiagCheckList[] = {
+ EFI_GUID EfiLoadPciRomGuid = EFI_LOADPCIROM_GUID;
+ SHELL_VAR_CHECK_ITEM LPRCheckList[] = {
{
-@@ -90,7 +90,7 @@
+@@ -81,7 +81,7 @@ SHELL_VAR_CHECK_ITEM LPRCheckList[] = {
NULL,
0,
0,
@@ -191,30 +1767,1318 @@ Index: drvdiag/drvdiag.c
}
};
-Index: drvdiag/drvdiag.h
-===================================================================
---- drvdiag/drvdiag.h (revision 64)
-+++ drvdiag/drvdiag.h (working copy)
-@@ -33,3 +33,4 @@
+@@ -377,7 +377,7 @@ Returns:
+ }
+
+ 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;
+diff --git a/LoadPciRom/LoadPciRom.h b/LoadPciRom/LoadPciRom.h
+index e9db96d..116bb89 100644
+--- a/LoadPciRom/LoadPciRom.h
++++ b/LoadPciRom/LoadPciRom.h
+@@ -30,3 +30,4 @@ Revision History
}
#endif
+
-Index: drvdiag/drvdiag.inf
-===================================================================
---- drvdiag/drvdiag.inf (revision 64)
-+++ drvdiag/drvdiag.inf (working copy)
-@@ -40,7 +40,7 @@
+diff --git a/LoadPciRom/LoadPciRom.inf b/LoadPciRom/LoadPciRom.inf
+index 8e79af7..83744ef 100644
+--- a/LoadPciRom/LoadPciRom.inf
++++ b/LoadPciRom/LoadPciRom.inf
+@@ -41,23 +41,23 @@ COMPONENT_TYPE = APPLICATION
+
+ [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
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
+
+ [nmake.common]
+ IMAGE_ENTRY_POINT=InitializeLoadPciRom
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+diff --git a/Ping/Ping.c b/Ping/Ping.c
+index 7d92881..65e45b7 100644
+--- a/Ping/Ping.c
++++ b/Ping/Ping.c
+@@ -20,14 +20,14 @@ Abstract:
+ --*/
+
+ #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 @@ SHELL_VAR_CHECK_ITEM PingCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+@@ -114,6 +114,8 @@ UINT32 RttSum;
+ UINT32 RttMin;
+ UINT32 RttMax;
+
++EFI_CPU_ARCH_PROTOCOL *gCpu = NULL;
++
+ STATIC
+ UINT64
+ GetTimerValue (
+@@ -135,7 +137,22 @@ Returns:
+ --*/
+ {
+- 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 @@ Returns:
+ //
+ // Locate the Cpu Arch Protocol.
+ //
+- Status = BS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, &Cpu);
++ Status = BS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, (VOID**)&Cpu);
+ if (EFI_ERROR (Status)) {
+ return Status;
+ }
+diff --git a/Ping/Ping.h b/Ping/Ping.h
+index 7867caf..6f59a0c 100644
+--- a/Ping/Ping.h
++++ b/Ping/Ping.h
+@@ -78,3 +78,4 @@ typedef struct _ICMP_TX_INFO {
+ } ICMP_TX_INFO;
+
+ #endif
++
+diff --git a/Ping/Ping.inf b/Ping/Ping.inf
+index 64dec5c..a678489 100644
+--- a/Ping/Ping.inf
++++ b/Ping/Ping.inf
+@@ -25,24 +25,24 @@ FILE_GUID = FAAA94BA-7095-4c0f-8D69-8E00C8328863
+ COMPONENT_TYPE = APPLICATION
[sources.common]
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- DrvdiagStrings.uni
- drvdiag.c
- drvdiag.h
-@@ -48,17 +48,17 @@
+ 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 @@ COMPONENT_TYPE = APPLICATION
+ ArchProtocolLib
+ EdkGuidLib
+ EdkFrameworkGuidLib
+- EfiDriverLib
+
+ [libraries.Ia32]
+ CpuIA32Lib
+@@ -64,9 +63,12 @@ COMPONENT_TYPE = APPLICATION
+ CpuIA32Lib
+
+ [nmake.common]
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS)
+ IMAGE_ENTRY_POINT=Ping
+- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
++ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+diff --git a/Shell.inf b/Shell.inf
+index fee3558..b1dc90e 100644
+--- a/Shell.inf
++++ b/Shell.inf
+@@ -25,179 +25,189 @@ FILE_GUID = c57ad6b7-0515-40a8-9d21-551652854e37
+ 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
+-
+- newshell\NshellStrings.uni
+- newshell\init.c
+- newshell\nshell.h
+- newshell\fakehii.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
+
+ 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
+-
+- touch\TouchStrings.uni
+- touch\touch.c
+- touch\touch.h
+-
+- vol\VolStrings.uni
+- vol\vol.c
+- vol\vol.h
+-
+- ver\VerStrings.uni
+- ver\ver.c
+- ver\ver.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
++
++ vol/VolStrings.uni
++ vol/vol.c
++ vol/vol.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]
+@@ -216,17 +226,18 @@ COMPONENT_TYPE = APPLICATION
+ # we will specify some additional DEFINEs on the compile command line.
+ #
+ [nmake.common]
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeShell
+- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
++ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL
++
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_MONOSHELL
+
+ [nmake.ebc]
+ EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DEFI_MONOSHELL
+ EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+-
+-
+-
+-
+\ No newline at end of file
+diff --git a/ShellFull.inf b/ShellFull.inf
+index 832dc79..48fa7aa 100644
+--- a/ShellFull.inf
++++ b/ShellFull.inf
+@@ -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
+-
+- newshell\NshellStrings.uni
+- newshell\init.c
+- newshell\nshell.h
+- newshell\fakehii.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
+
+ 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
+-
+- touch\TouchStrings.uni
+- touch\touch.c
+- touch\touch.h
+-
+- vol\VolStrings.uni
+- vol\vol.c
+- vol\vol.h
+-
+- ver\VerStrings.uni
+- ver\ver.c
+- ver\ver.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
++
++ vol/VolStrings.uni
++ vol/vol.c
++ vol/vol.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
+-
+- IfConfig\IfConfigStrings.uni
+- IfConfig\IfConfig.c
+- IfConfig\IfConfig.h
+- IfConfig\ShellNetHelper.c
+-
+- ipconfig\IpConfigStrings.uni
+- ipconfig\IpConfig.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
++
++ 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]
+@@ -341,16 +351,18 @@ COMPONENT_TYPE = APPLICATION
+ # we will specify some additional DEFINEs on the compile command line.
+ #
+ [nmake.common]
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeShell
+- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL /DEFI_FULLSHELL
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
++ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL /DEFI_FULLSHELL
++
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_MONOSHELL -DEFI_FULLSHELL
+
+ [nmake.ebc]
+ EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DEFI_MONOSHELL /DEFI_FULLSHELL
+ EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+-
+-
+-
+\ No newline at end of file
+diff --git a/SmbiosView/EventLogInfo.c b/SmbiosView/EventLogInfo.c
+index 7f9b726..33e3549 100644
+--- a/SmbiosView/EventLogInfo.c
++++ b/SmbiosView/EventLogInfo.c
+@@ -25,7 +25,7 @@ Revision History
+ #include "PrintInfo.h"
+ #include "QueryTable.h"
+ #include "EventLogInfo.h"
+-#include "smbios.h"
++#include "Smbios.h"
+ #include STRING_DEFINES_FILE
+
+ VOID
+diff --git a/SmbiosView/EventLogInfo.h b/SmbiosView/EventLogInfo.h
+index d1591c0..ca58380 100644
+--- a/SmbiosView/EventLogInfo.h
++++ b/SmbiosView/EventLogInfo.h
+@@ -85,3 +85,4 @@ DisplaySysEventLogData (
+ );
+
+ #endif
++
+diff --git a/SmbiosView/LibSmbios.h b/SmbiosView/LibSmbios.h
+index b13fd6b..c2e6b5e 100644
+--- a/SmbiosView/LibSmbios.h
++++ b/SmbiosView/LibSmbios.h
+@@ -642,3 +642,4 @@ LibGetSmbiosSystemGuidAndSerialNumber (
+
+
+ #endif
++
+diff --git a/SmbiosView/LibSmbiosView.c b/SmbiosView/LibSmbiosView.c
+index d31ed01..f1438bc 100644
+--- a/SmbiosView/LibSmbiosView.c
++++ b/SmbiosView/LibSmbiosView.c
+@@ -22,10 +22,10 @@ Revision History
+ --*/
+
+ #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 @@ Returns:
+ //
+ // 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);
+@@ -110,13 +110,13 @@ LibSmbiosGetEPS (
+
+ VOID
+ LibSmbiosGetStructHead (
+- SMBIOS_STRUCTURE_POINTER *pHead
++ SMBIOS_STRUCTURE_POINTER **pHead
+ )
+ {
+ //
+ // return SMBIOS structure table address
+ //
+- pHead = mSmbiosStruct;
++ *pHead = mSmbiosStruct;
+ }
+
+ EFI_STATUS
+diff --git a/SmbiosView/LibSmbiosView.h b/SmbiosView/LibSmbiosView.h
+index d763937..b7f7989 100644
+--- a/SmbiosView/LibSmbiosView.h
++++ b/SmbiosView/LibSmbiosView.h
+@@ -66,7 +66,7 @@ LibSmbiosGetEPS (
+
+ VOID
+ LibSmbiosGetStructHead (
+- SMBIOS_STRUCTURE_POINTER *pHead
++ SMBIOS_STRUCTURE_POINTER **pHead
+ );
+
+ EFI_STATUS
+@@ -128,3 +128,4 @@ SmbiosCheckStructure (
+ );
+
+ #endif
++
+diff --git a/SmbiosView/PrintInfo.c b/SmbiosView/PrintInfo.c
+index ff1f63c..1789ef6 100644
+--- a/SmbiosView/PrintInfo.c
++++ b/SmbiosView/PrintInfo.c
+@@ -26,7 +26,7 @@ Revision History
+ #include "LibSmbiosView.h"
+ #include "QueryTable.h"
+ #include "EventLogInfo.h"
+-#include "smbios.h"
++#include "Smbios.h"
+ #include STRING_DEFINES_FILE
+
+ //
+diff --git a/SmbiosView/PrintInfo.h b/SmbiosView/PrintInfo.h
+index 608dfb1..10faf21 100644
+--- a/SmbiosView/PrintInfo.h
++++ b/SmbiosView/PrintInfo.h
+@@ -199,3 +199,4 @@ DisplaySPSCharacteristics (
+ );
+
+ #endif
++
+diff --git a/SmbiosView/QueryTable.c b/SmbiosView/QueryTable.c
+index 4570938..1d9d60f 100644
+--- a/SmbiosView/QueryTable.c
++++ b/SmbiosView/QueryTable.c
+@@ -23,7 +23,7 @@ Revision History
+ #include "EfiShellLib.h"
+ #include "QueryTable.h"
+ #include "PrintInfo.h"
+-#include "smbios.h"
++#include "Smbios.h"
+
+ #include STRING_DEFINES_FILE
+
+diff --git a/SmbiosView/QueryTable.h b/SmbiosView/QueryTable.h
+index 727a053..ceb02fe 100644
+--- a/SmbiosView/QueryTable.h
++++ b/SmbiosView/QueryTable.h
+@@ -437,3 +437,4 @@ DisplayIPMIDIBMCInterfaceType (
+ );
+
+ #endif
++
+diff --git a/SmbiosView/Smbios.h b/SmbiosView/Smbios.h
+index 8a91b9e..15eb89c 100644
+--- a/SmbiosView/Smbios.h
++++ b/SmbiosView/Smbios.h
+@@ -37,3 +37,4 @@ extern EFI_HII_HANDLE HiiHandle;
+
+
+ #endif
++
+diff --git a/SmbiosView/Smbiosview.inf b/SmbiosView/Smbiosview.inf
+index f9e8c0b..d35b669 100644
+--- a/SmbiosView/Smbiosview.inf
++++ b/SmbiosView/Smbiosview.inf
+@@ -25,7 +25,7 @@ FILE_GUID = 0F4C0280-B581-4940-AF19-D0CB5559CC95
+ COMPONENT_TYPE = APPLICATION
+
+ [sources.common]
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ SmBiosViewStrings.uni
+ QueryTable.c
+ QueryTable.h
+@@ -43,19 +43,19 @@ COMPONENT_TYPE = APPLICATION
+
[includes.common]
.
- ..\Inc
@@ -228,6 +3092,8 @@ Index: drvdiag/drvdiag.inf
- $(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
@@ -239,26 +3105,250 @@ Index: drvdiag/drvdiag.inf
+ $(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
-@@ -73,7 +73,11 @@
+@@ -70,7 +70,12 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=DrvdiagMain
+ IMAGE_ENTRY_POINT=InitializeSmbiosViewApplication
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ L_PROJ_FLAGS=/align:4096
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
++
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+diff --git a/SmbiosView/smbiosview.c b/SmbiosView/smbiosview.c
+index 13b4fb7..79716d3 100644
+--- a/SmbiosView/smbiosview.c
++++ b/SmbiosView/smbiosview.c
+@@ -26,7 +26,7 @@ Revision History
+ #include "smbiosview.h"
+ #include "PrintInfo.h"
+ #include "QueryTable.h"
+-#include "smbios.h"
++#include "Smbios.h"
+
+ extern UINT8 STRING_ARRAY_NAME[];
+
+@@ -88,7 +88,7 @@ SHELL_VAR_CHECK_ITEM SmbiosviewCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE)0
+ }
+ };
+
+diff --git a/SmbiosView/smbiosview.h b/SmbiosView/smbiosview.h
+index dd65bc1..2101551 100644
+--- a/SmbiosView/smbiosview.h
++++ b/SmbiosView/smbiosview.h
+@@ -84,3 +84,4 @@ GetShowTypeString (
+ extern UINT8 gShowType;
+
+ #endif
++
+diff --git a/TelnetMgmt/TelnetMgmt.c b/TelnetMgmt/TelnetMgmt.c
+index 9d779df..04088d1 100644
+--- a/TelnetMgmt/TelnetMgmt.c
++++ b/TelnetMgmt/TelnetMgmt.c
+@@ -32,7 +32,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ #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 @@ SHELL_VAR_CHECK_ITEM TelnetmgmtCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+diff --git a/TelnetMgmt/TelnetMgmt.h b/TelnetMgmt/TelnetMgmt.h
+index 224fc3b..ed3c2f2 100644
+--- a/TelnetMgmt/TelnetMgmt.h
++++ b/TelnetMgmt/TelnetMgmt.h
+@@ -29,4 +29,4 @@ Revision History
+ 0x55d41b9a, 0x954d, 0x4fbb, 0x8d, 0x6d, 0x24, 0x75, 0xf5, 0x30, 0x9d, 0x37 \
+ }
+
+-#endif
+\ No newline at end of file
++#endif
+diff --git a/TelnetMgmt/TelnetMgmt.inf b/TelnetMgmt/TelnetMgmt.inf
+index ad8b8bd..d2d9edb 100644
+--- a/TelnetMgmt/TelnetMgmt.inf
++++ b/TelnetMgmt/TelnetMgmt.inf
+@@ -25,23 +25,23 @@ FILE_GUID = 0C6282F4-F575-469d-BD55-7693AAC9D812
+ 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
+@@ -55,6 +55,11 @@ COMPONENT_TYPE = APPLICATION
+
+ [nmake.common]
+ IMAGE_ENTRY_POINT=InitializeTelnetMgmt
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
++
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: cls/cls.c
-===================================================================
---- cls/cls.c (revision 64)
-+++ cls/cls.c (working copy)
-@@ -30,7 +30,7 @@
+diff --git a/TelnetMgmt/TelnetServer.h b/TelnetMgmt/TelnetServer.h
+index 5eca179..8e0610f 100644
+--- a/TelnetMgmt/TelnetServer.h
++++ b/TelnetMgmt/TelnetServer.h
+@@ -81,3 +81,4 @@ typedef struct _EFI_TELNET_SERVER_PROTOCOL {
+ extern EFI_GUID gEfiTelnetServerGuid;
+
+ #endif
++
+diff --git a/attrib/attrib.c b/attrib/attrib.c
+index 3599d6d..6d1e677 100644
+--- a/attrib/attrib.c
++++ b/attrib/attrib.c
+@@ -57,7 +57,7 @@ AttribFile (
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM AttribCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+@@ -438,7 +438,7 @@ Returns:
+ //
+ 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,
+diff --git a/attrib/attrib.h b/attrib/attrib.h
+index 69ebd2f..c40c2df 100644
+--- a/attrib/attrib.h
++++ b/attrib/attrib.h
+@@ -29,4 +29,5 @@ Revision History
+ 0xcd691c77, 0xfc45, 0x4d7b, 0xb8, 0x92, 0x92, 0xa, 0x86, 0x2d, 0x67, 0xdc \
+ }
+
+-#endif
+\ No newline at end of file
++#endif
++
+diff --git a/attrib/attrib.inf b/attrib/attrib.inf
+index 38cc094..a35f1a7 100644
+--- a/attrib/attrib.inf
++++ b/attrib/attrib.inf
+@@ -41,24 +41,24 @@ COMPONENT_TYPE = APPLICATION
+
+ [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
+@@ -73,7 +73,11 @@ COMPONENT_TYPE = APPLICATION
+
+ [nmake.common]
+ IMAGE_ENTRY_POINT=InitializeAttrib
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+diff --git a/cls/cls.c b/cls/cls.c
+index 572cc82..bd9826a 100644
+--- a/cls/cls.c
++++ b/cls/cls.c
+@@ -30,7 +30,7 @@ extern UINT8 STRING_ARRAY_NAME[];
//
#include STRING_DEFINES_FILE
@@ -267,7 +3357,7 @@ Index: cls/cls.c
EFI_GUID EfiClsGuid = EFI_CLS_GUID;
SHELL_VAR_CHECK_ITEM ClsCheckList[] = {
{
-@@ -49,7 +49,7 @@
+@@ -49,7 +49,7 @@ SHELL_VAR_CHECK_ITEM ClsCheckList[] = {
NULL,
0,
0,
@@ -276,20 +3366,20 @@ Index: cls/cls.c
}
};
-Index: cls/cls.h
-===================================================================
---- cls/cls.h (revision 64)
-+++ cls/cls.h (working copy)
-@@ -36,3 +36,4 @@
+diff --git a/cls/cls.h b/cls/cls.h
+index eab21eb..31361c7 100644
+--- a/cls/cls.h
++++ b/cls/cls.h
+@@ -36,3 +36,4 @@ Revision History
}
#endif
+
-Index: cls/cls.inf
-===================================================================
---- cls/cls.inf (revision 64)
-+++ cls/cls.inf (working copy)
-@@ -40,24 +40,24 @@
+diff --git a/cls/cls.inf b/cls/cls.inf
+index 1e5ef66..70e676a 100644
+--- a/cls/cls.inf
++++ b/cls/cls.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
@@ -326,7 +3416,7 @@ Index: cls/cls.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,12 @@
+@@ -72,7 +72,12 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
IMAGE_ENTRY_POINT=InitializeCls
@@ -339,20 +3429,41 @@ Index: cls/cls.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+
-Index: newshell/nshell.inf
-===================================================================
---- newshell/nshell.inf (revision 64)
-+++ newshell/nshell.inf (working copy)
-@@ -26,24 +26,24 @@
+diff --git a/comp/comp.c b/comp/comp.c
+index 734bbe7..888f53f 100644
+--- a/comp/comp.c
++++ b/comp/comp.c
+@@ -50,7 +50,7 @@ SHELL_VAR_CHECK_ITEM CompCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
- [sources.common]
- NshellStrings.uni
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- init.c
- nshell.h
- fakehii.c
+diff --git a/comp/comp.h b/comp/comp.h
+index 4dd667c..4d6c647 100644
+--- a/comp/comp.h
++++ b/comp/comp.h
+@@ -29,4 +29,4 @@ Revision History
+ 0x7761e2c2, 0x7297, 0x434d, 0xb6, 0x52, 0xa9, 0x76, 0x91, 0xb8, 0x66, 0xf3 \
+ }
+-#endif
+\ No newline at end of file
++#endif
+diff --git a/comp/comp.inf b/comp/comp.inf
+index 7a525e4..86c464d 100644
+--- a/comp/comp.inf
++++ b/comp/comp.inf
+@@ -28,21 +28,21 @@ COMPONENT_TYPE = APPLICATION
+ CompStrings.uni
+ comp.c
+ comp.h
+-..\ShCommonStrings.uni
++../ShCommonStrings.uni
+
[includes.common]
.
- ..\Inc
@@ -380,174 +3491,408 @@ Index: newshell/nshell.inf
[libraries.common]
EfiShellLib
-@@ -63,11 +63,13 @@
+@@ -61,11 +61,16 @@ comp.h
# we will specify some additional DEFINEs on the compile command line.
#
[nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeShell
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeComp
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeShell
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
-- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL=2
-+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
--
--
-\ No newline at end of file
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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;
++
+
+
+\ No newline at end of file
+diff --git a/cp/cp.c b/cp/cp.c
+index 25ac3cf..9299af4 100644
+--- a/cp/cp.c
++++ b/cp/cp.c
+@@ -66,7 +66,7 @@ SHELL_VAR_CHECK_ITEM CpCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
}
-- 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;
+@@ -578,7 +578,7 @@ Returns:
+ //
+ 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 @@ Returns:
+ // 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 @@ Returns:
+ 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 @@ Returns:
+ SrcInfo = NULL;
+ DstInfo = NULL;
+ FileInfo = NULL;
+- DstVol = NULL;
+ DstFsInfo = NULL;
+ InputString[0] = 0;
+ BufSize = 0;
+@@ -1789,7 +1787,7 @@ Returns:
+ //
+ 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);
+diff --git a/cp/cp.h b/cp/cp.h
+index 338cdaa..89d22dd 100644
+--- a/cp/cp.h
++++ b/cp/cp.h
+@@ -67,4 +67,5 @@ CPMainProcOld (
+ IN EFI_SYSTEM_TABLE *SystemTable
+ );
- //
- // 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;
- }
+-#endif
+\ No newline at end of file
++#endif
++
+diff --git a/cp/cp.inf b/cp/cp.inf
+index 714c7bb..160434c 100644
+--- a/cp/cp.inf
++++ b/cp/cp.inf
+@@ -41,23 +41,23 @@ COMPONENT_TYPE = APPLICATION
-- Status = LibLocateProtocol (&ShellEnvProtocol, &SE);
-+ Status = LibLocateProtocol (&ShellEnvProtocol, (VOID**)&SE);
- ASSERT (!EFI_ERROR (Status));
- SI = SE->NewShell (ImageHandle);
+ [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./
-@@ -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 ();
+ [libraries.common]
+ EfiShellLib
+@@ -72,7 +72,12 @@ COMPONENT_TYPE = APPLICATION
-- 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
+ [nmake.common]
+ IMAGE_ENTRY_POINT=InitializeCP
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
++
+diff --git a/date/date.c b/date/date.c
+index fb2f765..0416abe 100644
+--- a/date/date.c
++++ b/date/date.c
+@@ -53,8 +53,8 @@ STATIC
+ 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 @@ SHELL_VAR_CHECK_ITEM DateCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+@@ -330,8 +330,8 @@ STATIC
+ BOOLEAN
+ GetNumber (
+ IN CHAR16 *Str,
+- IN OUT INTN *Position,
+- IN OUT INTN *Number,
++ IN OUT UINTN *Position,
++ IN OUT UINTN *Number,
+ IN BOOLEAN EndNum
+ )
+ {
+diff --git a/date/date.h b/date/date.h
+index c95ac4d..d327c33 100644
+--- a/date/date.h
++++ b/date/date.h
+@@ -32,3 +32,4 @@ Revision History
+ }
#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
+diff --git a/date/date.inf b/date/date.inf
+index 2c40f72..affbb73 100644
+--- a/date/date.inf
++++ b/date/date.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
+
+
+ [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
+@@ -71,7 +71,12 @@ COMPONENT_TYPE = APPLICATION
+
+ [nmake.common]
+ IMAGE_ENTRY_POINT=InitializeDate
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
++
+diff --git a/dblk/dblk.c b/dblk/dblk.c
+index 3019627..21c841e 100644
+--- a/dblk/dblk.c
++++ b/dblk/dblk.c
+@@ -52,7 +52,7 @@ SHELL_VAR_CHECK_ITEM DblkCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+diff --git a/dblk/dblk.h b/dblk/dblk.h
+index 0341aeb..d7ec371 100644
+--- a/dblk/dblk.h
++++ b/dblk/dblk.h
+@@ -168,3 +168,4 @@ DblkStructsPrint (
+ extern EFI_HII_HANDLE HiiDblkHandle;
+
#endif
++
+diff --git a/dblk/dblk.inf b/dblk/dblk.inf
+index f15392c..3c5dd45 100644
+--- a/dblk/dblk.inf
++++ b/dblk/dblk.inf
+@@ -26,23 +26,23 @@ COMPONENT_TYPE = APPLICATION
--#endif
+ [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
+@@ -61,11 +61,16 @@ COMPONENT_TYPE = APPLICATION
+ # we will specify some additional DEFINEs on the compile command line.
+ #
+ [nmake.common]
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=DumpBlockDev
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
++
+
+
\ No newline at end of file
-+#endif
+diff --git a/dblk/efidump.c b/dblk/efidump.c
+index 7fc0337..c18b826 100644
+--- a/dblk/efidump.c
++++ b/dblk/efidump.c
+@@ -24,7 +24,7 @@ Revision History
+ --*/
+
+ #include "dblk.h"
+-#include "Efipart.h"
++#include "EfiPart.h"
+ #include "EfiShellLib.h"
+
+ #include STRING_DEFINES_FILE
+@@ -320,13 +320,11 @@ DblkDumpSystemTable (
+ 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 @@ DblkDumpSystemTable (
+ 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;
+
-Index: type/type.c
-===================================================================
---- type/type.c (revision 64)
-+++ type/type.c (working copy)
-@@ -59,7 +59,7 @@
- BOOLEAN TypeUnicode;
- BOOLEAN TypeAuto;
+ Status = LibGetSystemConfigurationTable(&gEfiSalSystemTableGuid, &SalSystemTable);
+ if (!EFI_ERROR(Status)) {
+ PrintToken (STRING_TOKEN(STR_DEBUG_SAL_SYSTEM_TABLE), HiiDblkHandle, (UINT64)SalSystemTable);
+@@ -364,22 +364,22 @@ DblkDumpSystemTable (
+
+ 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);
+ }
+ }
+diff --git a/devices/devices.c b/devices/devices.c
+index bcc8beb..1934ef5 100644
+--- a/devices/devices.c
++++ b/devices/devices.c
+@@ -36,7 +36,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ // Global Variables
+ //
-EFI_HII_HANDLE HiiHandle;
+STATIC EFI_HII_HANDLE HiiHandle;
- EFI_GUID EfiTypeGuid = EFI_TYPE_GUID;
- SHELL_VAR_CHECK_ITEM TypeCheckList[] = {
+ EFI_GUID EfiDevicesGuid = EFI_DEVICES_GUID;
+ SHELL_VAR_CHECK_ITEM DevicesCheckList[] = {
{
-@@ -90,7 +90,7 @@
+@@ -61,7 +61,7 @@ SHELL_VAR_CHECK_ITEM DevicesCheckList[] = {
NULL,
0,
0,
@@ -556,29 +3901,28 @@ Index: type/type.c
}
};
-Index: type/type.h
-===================================================================
---- type/type.h (revision 64)
-+++ type/type.h (working copy)
-@@ -30,3 +30,4 @@
+diff --git a/devices/devices.h b/devices/devices.h
+index 19e0983..6aff8bf 100644
+--- a/devices/devices.h
++++ b/devices/devices.h
+@@ -32,3 +32,4 @@ Revision History
+ 0x6fabed98, 0x2a7, 0x46a4, 0x84, 0xd1, 0x76, 0xcd, 0x5c, 0x49, 0x78, 0x74 \
}
-
#endif
+
-Index: type/type.inf
-===================================================================
---- type/type.inf (revision 64)
-+++ type/type.inf (working copy)
-@@ -40,24 +40,24 @@
-
+diff --git a/devices/devices.inf b/devices/devices.inf
+index c380f7d..f9356da 100644
+--- a/devices/devices.inf
++++ b/devices/devices.inf
+@@ -41,23 +41,23 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- TypeStrings.uni
- type.c
- type.h
-
+ DevicesStrings.uni
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ devices.c
+ devices.h
+
[includes.common]
.
- ..\Inc
@@ -606,10 +3950,10 @@ Index: type/type.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeType
+ IMAGE_ENTRY_POINT=DevicesMain
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -618,11 +3962,11 @@ Index: type/type.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: dmem/MemCommonPart.c
-===================================================================
---- dmem/MemCommonPart.c (revision 64)
-+++ dmem/MemCommonPart.c (working copy)
-@@ -58,7 +58,7 @@
+diff --git a/dmem/MemCommonPart.c b/dmem/MemCommonPart.c
+index 377da17..c4807a3 100644
+--- a/dmem/MemCommonPart.c
++++ b/dmem/MemCommonPart.c
+@@ -58,7 +58,7 @@ SHELL_VAR_CHECK_ITEM DmemCheckList[] = {
NULL,
0,
0,
@@ -631,7 +3975,7 @@ Index: dmem/MemCommonPart.c
}
};
-@@ -148,7 +148,7 @@
+@@ -148,7 +148,7 @@ Return:
return EFI_SUCCESS;
}
@@ -640,7 +3984,7 @@ Index: dmem/MemCommonPart.c
Size = (SizeStr) ? Xtoi (SizeStr) : 512;
//
-@@ -156,7 +156,7 @@
+@@ -156,7 +156,7 @@ Return:
//
PrintToken (STRING_TOKEN (STR_DMEM_MEMORY_ADDR), HiiDmemHandle, 2 * sizeof (UINTN), Address, Size);
if (MMIo) {
@@ -649,7 +3993,7 @@ Index: dmem/MemCommonPart.c
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 @@
+@@ -171,7 +171,7 @@ Return:
return Status;
}
@@ -658,7 +4002,7 @@ Index: dmem/MemCommonPart.c
} else {
Buffer = (UINT8 *) (UINTN) Address;
}
-@@ -233,7 +233,7 @@
+@@ -233,7 +233,7 @@ Return:
//
MMIo = FALSE;
AddressStr = SizeStr = NULL;
@@ -667,7 +4011,7 @@ Index: dmem/MemCommonPart.c
Size = 512;
RetCode = LibCheckVariables (SI, DmemCheckList, &ChkPck, &Useful);
if (VarCheckOk != RetCode) {
-@@ -316,7 +316,7 @@
+@@ -316,7 +316,7 @@ Return:
//
PrintToken (STRING_TOKEN (STR_DMEM_NEW_MEMORY_ADDR), HiiDmemHandle, 2 * sizeof (UINTN), Address, Size);
if (MMIo) {
@@ -676,7 +4020,7 @@ Index: dmem/MemCommonPart.c
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 @@
+@@ -331,7 +331,7 @@ Return:
return Status;
}
@@ -685,22 +4029,88 @@ Index: dmem/MemCommonPart.c
} else {
Buffer = (UINT8 *) (UINTN) Address;
}
-Index: dmem/MemCommonPart.h
-===================================================================
---- dmem/MemCommonPart.h (revision 64)
-+++ dmem/MemCommonPart.h (working copy)
-@@ -61,4 +61,4 @@
+diff --git a/dmem/MemCommonPart.h b/dmem/MemCommonPart.h
+index f57e32a..f094fbb 100644
+--- a/dmem/MemCommonPart.h
++++ b/dmem/MemCommonPart.h
+@@ -61,4 +61,4 @@ EFIStructsPrint (
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 @@
+diff --git a/dmem/debug.h b/dmem/debug.h
+index 50df0ed..8d5cd4e 100644
+--- a/dmem/debug.h
++++ b/dmem/debug.h
+@@ -156,3 +156,4 @@ EFIStructsPrint (
+ extern EFI_HII_HANDLE HiiDmemHandle;
+
+ #endif
++
+diff --git a/dmem/dmem.inf b/dmem/dmem.inf
+index ca0dcaf..acdf279 100644
+--- a/dmem/dmem.inf
++++ b/dmem/dmem.inf
+@@ -25,7 +25,7 @@ FILE_GUID = 644E259E-FF88-4d31-8092-B99D8777F1C4
+ COMPONENT_TYPE = APPLICATION
+
+ [sources.common]
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ MemStrings.uni
+ DebugStrings.uni
+ mem.c
+@@ -34,17 +34,17 @@ COMPONENT_TYPE = APPLICATION
+
+ [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
+@@ -64,9 +64,13 @@ COMPONENT_TYPE = APPLICATION
+ # we will specify some additional DEFINEs on the compile command line.
+ #
+ [nmake.common]
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=DumpMem
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+diff --git a/dmem/efidump.c b/dmem/efidump.c
+index 051f6a0..11526f2 100644
+--- a/dmem/efidump.c
++++ b/dmem/efidump.c
+@@ -24,7 +24,7 @@ Revision History
--*/
#include "debug.h"
@@ -709,7 +4119,7 @@ Index: dmem/efidump.c
#include "EfiShellLib.h"
#include STRING_DEFINES_FILE
-@@ -320,13 +320,11 @@
+@@ -320,13 +320,11 @@ DumpSystemTable (
VOID *AcpiTable;
VOID *Acpi20Table;
VOID *SMBIOSTable;
@@ -723,7 +4133,7 @@ Index: dmem/efidump.c
MpsTable = NULL;
PrintToken (
-@@ -352,11 +350,13 @@
+@@ -352,11 +350,13 @@ DumpSystemTable (
PrintToken (STRING_TOKEN (STR_DEBUG_STD_ERROR_ON), HiiDmemHandle, LibDevicePathToStr (DevicePath));
}
@@ -740,7 +4150,7 @@ Index: dmem/efidump.c
if (!EFI_ERROR(Status)) {
PrintToken (STRING_TOKEN(STR_DEBUG_SAL_SYSTEM_TABLE), HiiDmemHandle, (UINT64)SalSystemTable);
}
-@@ -364,22 +364,22 @@
+@@ -364,22 +364,22 @@ DumpSystemTable (
Status = LibGetSystemConfigurationTable (&gEfiAcpiTableGuid, &AcpiTable);
if (!EFI_ERROR (Status)) {
@@ -767,29 +4177,50 @@ Index: dmem/efidump.c
}
}
-Index: dmem/debug.h
-===================================================================
---- dmem/debug.h (revision 64)
-+++ dmem/debug.h (working copy)
-@@ -156,3 +156,4 @@
- extern EFI_HII_HANDLE HiiDmemHandle;
+diff --git a/dmpstore/dmpstore.c b/dmpstore/dmpstore.c
+index 747762e..3473d19 100644
+--- a/dmpstore/dmpstore.c
++++ b/dmpstore/dmpstore.c
+@@ -95,7 +95,7 @@ SetFileVariable (
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM DmpstoreCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+diff --git a/dmpstore/dmpstore.h b/dmpstore/dmpstore.h
+index 32d72ec..278fb59 100644
+--- a/dmpstore/dmpstore.h
++++ b/dmpstore/dmpstore.h
+@@ -40,3 +40,4 @@ typedef struct {
+ } DMPSTORE_VARIABLE;
#endif
+
-Index: dmem/dmem.inf
-===================================================================
---- dmem/dmem.inf (revision 64)
-+++ dmem/dmem.inf (working copy)
-@@ -25,7 +25,7 @@
+diff --git a/dmpstore/dmpstore.inf b/dmpstore/dmpstore.inf
+index f380759..4a5563d 100644
+--- a/dmpstore/dmpstore.inf
++++ b/dmpstore/dmpstore.inf
+@@ -25,24 +25,24 @@ FILE_GUID = 7185D15A-A0AE-4dd1-A58F-C6EAD28EC9A8
COMPONENT_TYPE = APPLICATION
[sources.common]
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- MemStrings.uni
- DebugStrings.uni
- mem.c
-@@ -34,17 +34,17 @@
+ DmpstoreStrings.uni
+ dmpstore.c
+ dmpstore.h
[includes.common]
.
@@ -818,35 +4249,38 @@ Index: dmem/dmem.inf
[libraries.common]
EfiShellLib
-@@ -64,9 +64,13 @@
+@@ -61,11 +61,14 @@ COMPONENT_TYPE = APPLICATION
# we will specify some additional DEFINEs on the compile command line.
#
[nmake.common]
-+ IMAGE_ENTRY_POINT=DumpMem
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeDumpStore
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=DumpMem
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+-
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: devices/devices.c
-===================================================================
---- devices/devices.c (revision 64)
-+++ devices/devices.c (working copy)
-@@ -36,7 +36,7 @@
+
+\ No newline at end of file
+diff --git a/drivers/drivers.c b/drivers/drivers.c
+index 0c6cfc0..84271b9 100644
+--- a/drivers/drivers.c
++++ b/drivers/drivers.c
+@@ -43,7 +43,7 @@ extern UINT8 STRING_ARRAY_NAME[];
//
// Global Variables
//
-EFI_HII_HANDLE HiiHandle;
+STATIC EFI_HII_HANDLE HiiHandle;
- EFI_GUID EfiDevicesGuid = EFI_DEVICES_GUID;
- SHELL_VAR_CHECK_ITEM DevicesCheckList[] = {
+ EFI_GUID EfiDriversGuid = EFI_DRIVERS_GUID;
+ SHELL_VAR_CHECK_ITEM DriversCheckList[] = {
{
-@@ -61,7 +61,7 @@
+@@ -68,7 +68,7 @@ SHELL_VAR_CHECK_ITEM DriversCheckList[] = {
NULL,
0,
0,
@@ -855,28 +4289,46 @@ Index: devices/devices.c
}
};
-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 \
+@@ -133,7 +133,6 @@ Returns:
+ EFI_HANDLE *ControllerHandleBuffer;
+ UINTN ChildControllerHandleCount;
+ CHAR16 *ImageName;
+- BOOLEAN IsHelp;
+ SHELL_VAR_CHECK_CODE RetCode;
+ CHAR16 *Useful;
+ SHELL_ARG_LIST *Item;
+@@ -143,7 +142,6 @@ Returns:
+ Language = NULL;
+ DriverImageHandleCount = 0;
+ DriverImageHandleBuffer = NULL;
+- IsHelp = FALSE;
+ ZeroMem (&ChkPck, sizeof (SHELL_VAR_CHECK_PACKAGE));
+
+ EFI_SHELL_APP_INIT (ImageHandle, SystemTable);
+diff --git a/drivers/drivers.h b/drivers/drivers.h
+index 6ef5e12..7c29cb0 100644
+--- a/drivers/drivers.h
++++ b/drivers/drivers.h
+@@ -33,3 +33,4 @@ Revision History
}
+
#endif
+
-Index: devices/devices.inf
-===================================================================
---- devices/devices.inf (revision 64)
-+++ devices/devices.inf (working copy)
-@@ -41,23 +41,23 @@
+diff --git a/drivers/drivers.inf b/drivers/drivers.inf
+index befa6cd..056bf90 100644
+--- a/drivers/drivers.inf
++++ b/drivers/drivers.inf
+@@ -40,7 +40,7 @@ COMPONENT_TYPE = APPLICATION
+
[sources.common]
- DevicesStrings.uni
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- devices.c
- devices.h
-
+ DriversStrings.uni
+ drivers.c
+ drivers.h
+@@ -48,17 +48,17 @@ COMPONENT_TYPE = APPLICATION
+
[includes.common]
.
- ..\Inc
@@ -904,10 +4356,10 @@ Index: devices/devices.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -73,7 +73,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=DevicesMain
+ IMAGE_ENTRY_POINT=DriversMain
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -916,20 +4368,20 @@ Index: devices/devices.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: mv/mv.c
-===================================================================
---- mv/mv.c (revision 64)
-+++ mv/mv.c (working copy)
-@@ -36,7 +36,7 @@
+diff --git a/drvcfg/drvcfg.c b/drvcfg/drvcfg.c
+index b604432..a037ac6 100644
+--- a/drvcfg/drvcfg.c
++++ b/drvcfg/drvcfg.c
+@@ -38,7 +38,7 @@ extern UINT8 STRING_ARRAY_NAME[];
//
// Global Variables
//
-EFI_HII_HANDLE HiiHandle;
+STATIC EFI_HII_HANDLE HiiHandle;
- EFI_GUID EfiMvGuid = EFI_MV_GUID;
- SHELL_VAR_CHECK_ITEM MvCheckList[] = {
+ EFI_GUID EfiDrvcfgGuid = EFI_DRVCFG_GUID;
+ SHELL_VAR_CHECK_ITEM DrvcfgCheckList[] = {
{
-@@ -55,7 +55,7 @@
+@@ -87,7 +87,7 @@ SHELL_VAR_CHECK_ITEM DrvcfgCheckList[] = {
NULL,
0,
0,
@@ -938,31 +4390,29 @@ Index: mv/mv.c
}
};
-Index: mv/mv.h
-===================================================================
---- mv/mv.h (revision 64)
-+++ mv/mv.h (working copy)
-@@ -33,4 +33,4 @@
-
- #define EFI_FILE_STRING_SIZE 260
+diff --git a/drvcfg/drvcfg.h b/drvcfg/drvcfg.h
+index 9e14b9f..4255940 100644
+--- a/drvcfg/drvcfg.h
++++ b/drvcfg/drvcfg.h
+@@ -33,3 +33,4 @@ Revision History
+ }
--#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 @@
+ #endif
++
+diff --git a/drvcfg/drvcfg.inf b/drvcfg/drvcfg.inf
+index 71b2778..1abd9f2 100644
+--- a/drvcfg/drvcfg.inf
++++ b/drvcfg/drvcfg.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- MvStrings.uni
- mv.c
- mv.h
-
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ DrvcfgStrings.uni
+ drvcfg.c
+ drvcfg.h
+
[includes.common]
.
- ..\Inc
@@ -990,10 +4440,10 @@ Index: mv/mv.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeMv
+ IMAGE_ENTRY_POINT=DrvcfgMain
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -1002,11 +4452,20 @@ Index: mv/mv.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: unload/unload.c
-===================================================================
---- unload/unload.c (revision 64)
-+++ unload/unload.c (working copy)
-@@ -66,7 +66,7 @@
+diff --git a/drvdiag/drvdiag.c b/drvdiag/drvdiag.c
+index 3a9435c..0db01de 100644
+--- a/drvdiag/drvdiag.c
++++ b/drvdiag/drvdiag.c
+@@ -41,7 +41,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM DrvdiagCheckList[] = {
NULL,
0,
0,
@@ -1015,99 +4474,30 @@ Index: unload/unload.c
}
};
-@@ -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 @@
+diff --git a/drvdiag/drvdiag.h b/drvdiag/drvdiag.h
+index 53d0478..8e10686 100644
+--- a/drvdiag/drvdiag.h
++++ b/drvdiag/drvdiag.h
+@@ -33,3 +33,4 @@ Revision History
}
#endif
+
-Index: unload/unload.inf
-===================================================================
---- unload/unload.inf (revision 64)
-+++ unload/unload.inf (working copy)
-@@ -39,23 +39,23 @@
- COMPONENT_TYPE = APPLICATION
+diff --git a/drvdiag/drvdiag.inf b/drvdiag/drvdiag.inf
+index f27c238..097b31b 100644
+--- a/drvdiag/drvdiag.inf
++++ b/drvdiag/drvdiag.inf
+@@ -40,7 +40,7 @@ COMPONENT_TYPE = APPLICATION
+
[sources.common]
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- UnloadStrings.uni
- unload.c
-
+ DrvdiagStrings.uni
+ drvdiag.c
+ drvdiag.h
+@@ -48,17 +48,17 @@ COMPONENT_TYPE = APPLICATION
+
[includes.common]
.
- ..\Inc
@@ -1135,32 +4525,33 @@ Index: unload/unload.inf
[libraries.common]
EfiShellLib
-@@ -70,6 +70,11 @@
+@@ -73,7 +73,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeUnload
+ IMAGE_ENTRY_POINT=DrvdiagMain
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-+
+
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: mode/mode.inf
-===================================================================
---- mode/mode.inf (revision 64)
-+++ mode/mode.inf (working copy)
-@@ -40,24 +40,24 @@
-
+diff --git a/edit/edit.inf b/edit/edit.inf
+index 0a48e87..3d69d4b 100644
+--- a/edit/edit.inf
++++ b/edit/edit.inf
+@@ -25,7 +25,7 @@ FILE_GUID = 51A60577-F1F6-444a-A372-244BED272023
+ COMPONENT_TYPE = APPLICATION
[sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- ModeStrings.uni
- mode.c
- mode.h
-
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ EditStrings.uni
+ editor.h
+ editortype.h
+@@ -41,17 +41,17 @@ COMPONENT_TYPE = APPLICATION
+
[includes.common]
.
- ..\Inc
@@ -1188,107 +4579,498 @@ Index: mode/mode.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
-
+@@ -70,11 +70,13 @@ COMPONENT_TYPE = APPLICATION
+ # we will specify some additional DEFINEs on the compile command line.
+ #
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeMode
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeEFIEditor
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+-
+-
+\ No newline at end of file
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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
+diff --git a/edit/editor.h b/edit/editor.h
+index c18db6a..f41b5b1 100644
+--- a/edit/editor.h
++++ b/edit/editor.h
+@@ -33,7 +33,7 @@ Abstract:
+ #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 EFI_EDITOR_GLOBAL_EDITOR MainEditor;
+ 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_
++
+diff --git a/edit/editortype.h b/edit/editortype.h
+index 674f120..861b6c1 100644
+--- a/edit/editortype.h
++++ b/edit/editortype.h
+@@ -28,7 +28,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+ #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 @@ typedef struct _EFI_EDITOR_MENU_ITEM {
+ } 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 @@ typedef struct {
+ } EFI_EDITOR_GLOBAL_EDITOR;
+
+ #endif
++
+diff --git a/edit/libEditor.c b/edit/libEditor.c
+index b39a2f0..7f32ce1 100644
+--- a/edit/libEditor.c
++++ b/edit/libEditor.c
+@@ -123,7 +123,7 @@ MainEditorInit (
+ Status = BS->HandleProtocol (
+ In,
+ &gEfiSimplePointerProtocolGuid,
+- &MainEditor.MouseInterface
++ (VOID**)&MainEditor.MouseInterface
+ );
+ if (EFI_ERROR (Status)) {
+ //
+@@ -146,7 +146,7 @@ MainEditorInit (
+ Status = BS->HandleProtocol (
+ HandleBuffer[Index],
+ &gEfiSimplePointerProtocolGuid,
+- &MainEditor.MouseInterface
++ (VOID**)&MainEditor.MouseInterface
+ );
+ if (!EFI_ERROR (Status)) {
+ break;
+@@ -169,31 +169,31 @@ MainEditorInit (
+ //
+ 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;
}
- };
-Index: mode/mode.h
-===================================================================
---- mode/mode.h (revision 64)
-+++ mode/mode.h (working copy)
-@@ -30,3 +30,4 @@
+ 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 @@ MainEditorCleanup (
+ //
+ 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
+diff --git a/edit/libFileBuffer.c b/edit/libFileBuffer.c
+index 1f1e2aa..1be2124 100644
+--- a/edit/libFileBuffer.c
++++ b/edit/libFileBuffer.c
+@@ -196,8 +196,9 @@ FileBufferRestoreMousePosition (
+ // 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 @@ FileBufferRestoreMousePosition (
+ 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 @@ FileBufferRestoreMousePosition (
+ //
+ // 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 @@ Returns:
+ 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 @@ FileBufferHome (
+ 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;
+
+diff --git a/edit/libInputBar.c b/edit/libInputBar.c
+index 0ec6858..f868ffb 100644
+--- a/edit/libInputBar.c
++++ b/edit/libInputBar.c
+@@ -141,8 +141,6 @@ Returns:
+ UINTN Size;
+ EFI_STATUS Status;
+ BOOLEAN NoDisplay;
+- UINTN Limit;
+- UINTN PromptLen;
+
+ //
+ // variable initialization
+@@ -162,10 +160,14 @@ Returns:
+ // 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,13 +175,7 @@ Returns:
+ EditorClearLine (INPUT_BAR_LOCATION);
+
+ Out->SetCursorPosition (Out, 0, INPUT_BAR_LOCATION - 1);
+- PrintToken (STRING_TOKEN (STR_EDIT_LIBINPUTBAR_MAININPUTBAR), HiiHandle, MainInputBar.Prompt);
+-
+- //
+- // that's the maximum input length that can be displayed on screen
+- //
+- PromptLen = StrLen (MainInputBar.Prompt);
+- Limit = MainEditor.ScreenSize.Column - PromptLen;
++ PrintToken (STRING_TOKEN (STR_EDIT_LIBINPUTBAR_MAININPUTBAR), gEditHiiHandle, MainInputBar.Prompt);
+
+ //
+ // this is a selection prompt, cursor will stay in edit area
+@@ -188,7 +184,10 @@ Returns:
+ 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 @@ Returns:
+ //
+ // restore screen attributes
+ //
+- Out->SetAttribute (Out, Orig.Data);
++ Out->SetAttribute (
++ Out,
++ EFI_TEXT_ATTR (Orig.Colors.Foreground, Orig.Colors.Background)
++ );
+
+ StatusBarNeedRefresh = TRUE;
+
+diff --git a/edit/libMenuBar.c b/edit/libMenuBar.c
+index 32fef4e..5ab13e6 100644
+--- a/edit/libMenuBar.c
++++ b/edit/libMenuBar.c
+@@ -189,7 +189,6 @@ MainMenuBarRefresh (
+ CHAR16 *NameString;
+ CHAR16 *FunctionKeyString;
+ UINTN BufferSize;
+- EFI_STATUS Status;
+
+ //
+ // variable initialization
+@@ -220,9 +219,9 @@ MainMenuBarRefresh (
+ 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 @@ MainMenuBarRefresh (
+ }
+
+ #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);
+
+diff --git a/edit/libMisc.h b/edit/libMisc.h
+index b7a438b..38cabf3 100644
+--- a/edit/libMisc.h
++++ b/edit/libMisc.h
+@@ -96,3 +96,4 @@ GetTextY (
+ ) ;
#endif
+
-Index: attrib/attrib.inf
-===================================================================
---- attrib/attrib.inf (revision 64)
-+++ attrib/attrib.inf (working copy)
-@@ -41,24 +41,24 @@
+diff --git a/edit/libStatusBar.c b/edit/libStatusBar.c
+index 1527c6e..88a24c9 100644
+--- a/edit/libStatusBar.c
++++ b/edit/libStatusBar.c
+@@ -157,11 +157,15 @@ Returns:
+ // back up the screen attributes
+ //
+ Orig = MainEditor.ColorAttributes;
++ New.Data = 0;
+ New.Colors.Foreground = Orig.Colors.Background;
+ New.Colors.Background = Orig.Colors.Foreground;
- [sources.common]
- AttribStrings.uni
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- attrib.c
- attrib.h
-
+ Out->EnableCursor (Out, FALSE);
+- Out->SetAttribute (Out, New.Data);
++ Out->SetAttribute (
++ Out,
++ EFI_TEXT_ATTR (New.Colors.Foreground, New.Colors.Background)
++ );
- [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./
+ //
+ // clear status bar
+@@ -191,7 +195,10 @@ Returns:
+ //
+ // restore the old screen attributes
+ //
+- Out->SetAttribute (Out, Orig.Data);
++ Out->SetAttribute (
++ Out,
++ EFI_TEXT_ATTR (Orig.Colors.Foreground, Orig.Colors.Background)
++ );
- [libraries.common]
- EfiShellLib
-@@ -73,7 +73,11 @@
+ //
+ // restore position in edit area
+diff --git a/edit/libTitleBar.c b/edit/libTitleBar.c
+index d5d1ad9..8b432a2 100644
+--- a/edit/libTitleBar.c
++++ b/edit/libTitleBar.c
+@@ -120,10 +120,15 @@ Returns:
+ // backup the old screen attributes
+ //
+ Orig = MainEditor.ColorAttributes;
++
++ New.Data = 0;
+ New.Colors.Foreground = Orig.Colors.Background;
+ New.Colors.Background = Orig.Colors.Foreground;
- [nmake.common]
- IMAGE_ENTRY_POINT=InitializeAttrib
+- 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 @@ Returns:
+ );
+
+ 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 @@ Returns:
+ //
+ // 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
+diff --git a/edit/libeditor.h b/edit/libeditor.h
+index 9c84059..e6a174c 100644
+--- a/edit/libeditor.h
++++ b/edit/libeditor.h
+@@ -52,3 +52,4 @@ MainEditorSetCutLine (
+ );
+
+ #endif
+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+diff --git a/edit/libfilebuffer.h b/edit/libfilebuffer.h
+index d2b519b..79ecd1b 100644
+--- a/edit/libfilebuffer.h
++++ b/edit/libfilebuffer.h
+@@ -209,3 +209,4 @@ EditGetDefaultFileName (
+ );
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: attrib/attrib.c
-===================================================================
---- attrib/attrib.c (revision 64)
-+++ attrib/attrib.c (working copy)
-@@ -57,7 +57,7 @@
+ #endif
++
+diff --git a/edit/libinputbar.h b/edit/libinputbar.h
+index bdbe9bf..3768306 100644
+--- a/edit/libinputbar.h
++++ b/edit/libinputbar.h
+@@ -44,3 +44,4 @@ MainInputBarSetStringSize (
+ );
+
+ #endif
++
+diff --git a/edit/libmenubar.h b/edit/libmenubar.h
+index 486aa81..27a89d8 100644
+--- a/edit/libmenubar.h
++++ b/edit/libmenubar.h
+@@ -85,3 +85,4 @@ MainCommandGotoLine (
+ );
+
+ #endif
++
+diff --git a/edit/libstatusbar.h b/edit/libstatusbar.h
+index bcc6997..05ccdef 100644
+--- a/edit/libstatusbar.h
++++ b/edit/libstatusbar.h
+@@ -53,3 +53,4 @@ MainStatusBarBackup (
+ );
+
+ #endif
++
+diff --git a/edit/libtitlebar.h b/edit/libtitlebar.h
+index eb7c1a3..3946ca7 100644
+--- a/edit/libtitlebar.h
++++ b/edit/libtitlebar.h
+@@ -46,3 +46,4 @@ MainTitleBarBackup (
+ );
+
+ #endif
++
+diff --git a/edit/main.c b/edit/main.c
+index 9f1c987..a69a1bc 100644
+--- a/edit/main.c
++++ b/edit/main.c
+@@ -34,7 +34,7 @@ EFI_BOOTSHELL_CODE(
//
// 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 @@
+-EFI_HII_HANDLE HiiHandle;
++EFI_HII_HANDLE gEditHiiHandle;
+ #if (EFI_SPECIFICATION_VERSION < 0x0002000A)
+ EFI_HII_PROTOCOL *Hii;
+ #endif
+@@ -56,7 +56,7 @@ SHELL_VAR_CHECK_ITEM EditCheckList[] = {
NULL,
0,
0,
@@ -1297,101 +5079,116 @@ Index: attrib/attrib.c
}
};
-@@ -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 \
+@@ -121,13 +121,13 @@ Returns:
+ //
+ // 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
--#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
+- Status = LibInitializeStrings (&HiiHandle, STRING_ARRAY_NAME, &EfiEditGuid);
++ Status = LibInitializeStrings (&gEditHiiHandle, STRING_ARRAY_NAME, &EfiEditGuid);
- [sources.common]
--..\ShCommonStrings.uni
-+../ShCommonStrings.uni
- ErrStrings.uni
- err.c
- err.h
-@@ -33,17 +33,17 @@
+ if (EFI_ERROR (Status)) {
+ return Status;
+@@ -137,7 +137,7 @@ Returns:
+ 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;
- [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./
+ default:
+@@ -161,10 +161,10 @@ Returns:
+ 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;
+ }
- [libraries.common]
- EfiShellLib
-@@ -63,11 +63,14 @@
- # we will specify some additional DEFINEs on the compile command line.
- #
- [nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeError
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeError
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+@@ -172,21 +172,21 @@ Returns:
+ }
--
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-
-\ No newline at end of file
-Index: err/DebugMask.h
-===================================================================
---- err/DebugMask.h (revision 64)
-+++ err/DebugMask.h (working copy)
-@@ -67,3 +67,4 @@
+ 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 @@ Returns:
+ 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 @@ Returns:
+ //
+ 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);
+ }
+ }
+
+diff --git a/err/DebugMask.h b/err/DebugMask.h
+index 61136aa..9ce362f 100644
+--- a/err/DebugMask.h
++++ b/err/DebugMask.h
+@@ -67,3 +67,4 @@ typedef struct _EFI_DEBUG_MASK_PROTOCOL {
extern EFI_GUID gEfiDebugMaskProtocolGuid;
#endif
+
-Index: err/err.c
-===================================================================
---- err/err.c (revision 64)
-+++ err/err.c (working copy)
-@@ -35,7 +35,7 @@
+diff --git a/err/err.c b/err/err.c
+index e41a9d6..6062ddb 100644
+--- a/err/err.c
++++ b/err/err.c
+@@ -35,7 +35,7 @@ extern UINTN EFIDebug;
//
// Global Variables
//
@@ -1400,7 +5197,7 @@ Index: err/err.c
EFI_GUID EfiErrGuid = EFI_ERR_GUID;
SHELL_VAR_CHECK_ITEM ErrCheckList[] = {
{
-@@ -60,7 +60,7 @@
+@@ -60,7 +60,7 @@ SHELL_VAR_CHECK_ITEM ErrCheckList[] = {
NULL,
0,
0,
@@ -1409,7 +5206,7 @@ Index: err/err.c
}
};
-@@ -149,7 +149,7 @@
+@@ -149,7 +149,7 @@ _DumpHandleMask (
EFI_DEBUG_MASK_PROTOCOL *dmp;
UINTN Mask;
@@ -1418,7 +5215,7 @@ Index: err/err.c
if (!EFI_ERROR (Status)) {
Status = dmp->GetDebugMask (dmp, &Mask);
if (!EFI_ERROR (Status)) {
-@@ -170,13 +170,11 @@
+@@ -170,13 +170,11 @@ _DumpDriverMask (
UINTN HandleNum;
UINTN Index;
UINTN DrvHandle;
@@ -1432,7 +5229,7 @@ Index: err/err.c
if (NULL != Handle) {
DrvHandle = (UINTN) StrToUIntegerBase (Handle, 16, &Status) - 1;
-@@ -278,7 +276,7 @@
+@@ -278,7 +276,7 @@ _SetDriverMask (
goto Done;
}
@@ -1441,7 +5238,7 @@ Index: err/err.c
if (EFI_ERROR (Status)) {
PrintToken (STRING_TOKEN (STR_ERR_HANDLE_NOT_FOUND), HiiHandle, DrvHandle + 1);
goto Done;
-@@ -336,7 +334,7 @@
+@@ -336,7 +334,7 @@ _SetAllDriverMask (
}
for (Index = 0; Index < BufferSize / sizeof(EFI_HANDLE); Index ++) {
@@ -1450,31 +5247,31 @@ Index: err/err.c
Status = dmp->SetDebugMask (dmp, Msk);
}
-Index: err/err.h
-===================================================================
---- err/err.h (revision 64)
-+++ err/err.h (working copy)
-@@ -29,4 +29,4 @@
+diff --git a/err/err.h b/err/err.h
+index f42e503..133006a 100644
+--- a/err/err.h
++++ b/err/err.h
+@@ -29,4 +29,4 @@ Revision History
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 @@
+diff --git a/err/err.inf b/err/err.inf
+index 467e734..3afd967 100644
+--- a/err/err.inf
++++ b/err/err.inf
+@@ -25,7 +25,7 @@ FILE_GUID = 7ED86F56-5558-4d4f-A972-9307909AE9BA
COMPONENT_TYPE = APPLICATION
[sources.common]
-..\ShCommonStrings.uni
+../ShCommonStrings.uni
- DecompressStrings.uni
- decompress.c
- decompress.h
-@@ -33,17 +33,17 @@
+ ErrStrings.uni
+ err.c
+ err.h
+@@ -33,17 +33,17 @@ err.h
[includes.common]
.
@@ -1503,102 +5300,120 @@ Index: EfiDecompress/Decompress.inf
[libraries.common]
EfiShellLib
-@@ -63,11 +63,14 @@
+@@ -63,11 +63,14 @@ err.h
# we will specify some additional DEFINEs on the compile command line.
#
[nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeDecompress
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeError
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeDecompress
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
--
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-+
+
\ No newline at end of file
-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 @@
+diff --git a/guid/guid.c b/guid/guid.c
+index 7f26e7d..78ec5eb 100644
+--- a/guid/guid.c
++++ b/guid/guid.c
+@@ -36,7 +36,7 @@ extern UINT8 STRING_ARRAY_NAME[];
//
- #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 @@
+ // 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 @@ SHELL_VAR_CHECK_ITEM GuidCheckList[] = {
NULL,
0,
0,
- 0
-+ (SHELL_VAR_CHECK_FLAG_TYPE) 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 \
+diff --git a/guid/guid.h b/guid/guid.h
+index af7560a..e6cf872 100644
+--- a/guid/guid.h
++++ b/guid/guid.h
+@@ -31,4 +31,4 @@ Revision History
+ 0x425bff44, 0x1cae, 0x4c27, 0x98, 0x2c, 0x25, 0xc8, 0x74, 0x59, 0xdf, 0xd6 \
}
-#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
+diff --git a/guid/guid.inf b/guid/guid.inf
+index 60639d2..621fab4 100644
+--- a/guid/guid.inf
++++ b/guid/guid.inf
+@@ -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
+@@ -63,8 +63,15 @@
+ EdkGuidLib
+ EdkFrameworkGuidLib
+ EfiGuidLib
++
+ [nmake.common]
+ IMAGE_ENTRY_POINT=GuidMain
+- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+
-Index: hexedit/heditor.h
-===================================================================
---- hexedit/heditor.h (revision 64)
-+++ hexedit/heditor.h (working copy)
-@@ -39,7 +39,7 @@
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
++
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
++
+\ No newline at end of file
+diff --git a/hexedit/heditor.h b/hexedit/heditor.h
+index 09196d6..74a3160 100644
+--- a/hexedit/heditor.h
++++ b/hexedit/heditor.h
+@@ -39,7 +39,7 @@ Abstract:
#include "libinputbar.h"
#include "libmenubar.h"
@@ -1607,7 +5422,7 @@ Index: hexedit/heditor.h
#include "libclipboard.h"
-@@ -52,9 +52,10 @@
+@@ -52,9 +52,10 @@ extern HEFI_EDITOR_GLOBAL_EDITOR HMainEditor;
extern BOOLEAN HEditorFirst;
extern BOOLEAN HEditorExit;
@@ -1619,11 +5434,100 @@ Index: hexedit/heditor.h
#endif // _HEDITOR_H
+
-Index: hexedit/libBufferImage.c
-===================================================================
---- hexedit/libBufferImage.c (revision 64)
-+++ hexedit/libBufferImage.c (working copy)
-@@ -203,6 +203,9 @@
+diff --git a/hexedit/heditortype.h b/hexedit/heditortype.h
+index 59317a9..d3936d0 100644
+--- a/hexedit/heditortype.h
++++ b/hexedit/heditortype.h
+@@ -30,7 +30,7 @@ Abstract:
+ #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 @@ typedef struct _HEFI_EDITOR_MENU_ITEM {
+ } 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 @@ typedef struct {
+ } HEFI_EDITOR_GLOBAL_EDITOR;
+
+ #endif
++
+diff --git a/hexedit/hexedit.inf b/hexedit/hexedit.inf
+index cf89b9e..aa44590 100644
+--- a/hexedit/hexedit.inf
++++ b/hexedit/hexedit.inf
+@@ -25,7 +25,7 @@ FILE_GUID = A5A41A42-5B2B-4de6-9556-DDC6DC31231C
+ COMPONENT_TYPE = APPLICATION
+
+ [sources.common]
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ HexeditStrings.uni
+ heditor.h
+ heditortype.h
+@@ -45,17 +45,17 @@ COMPONENT_TYPE = APPLICATION
+
+ [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
+@@ -75,11 +75,14 @@ COMPONENT_TYPE = APPLICATION
+ # we will specify some additional DEFINEs on the compile command line.
+ #
+ [nmake.common]
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeEFIHexEditor
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+
+-
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+
+\ No newline at end of file
+diff --git a/hexedit/libBufferImage.c b/hexedit/libBufferImage.c
+index 8a91058..2481dd3 100644
+--- a/hexedit/libBufferImage.c
++++ b/hexedit/libBufferImage.c
+@@ -203,6 +203,9 @@ Returns:
case MEM_BUFFER:
HMemImageBackup ();
break;
@@ -1633,7 +5537,7 @@ Index: hexedit/libBufferImage.c
}
return EFI_SUCCESS;
-@@ -587,7 +590,7 @@
+@@ -587,7 +590,7 @@ HBufferImageRestoreMousePosition (
UINT8 Value;
BOOLEAN HighBits;
@@ -1642,7 +5546,7 @@ Index: hexedit/libBufferImage.c
if (HMainEditor.MouseSupported) {
if (HBufferImageMouseNeedRefresh) {
-@@ -610,6 +613,7 @@
+@@ -610,6 +613,7 @@ HBufferImageRestoreMousePosition (
// backup the old screen attributes
//
Orig = HMainEditor.ColorAttributes;
@@ -1650,7 +5554,7 @@ Index: hexedit/libBufferImage.c
New.Colors.Foreground = Orig.Colors.Background;
New.Colors.Background = Orig.Colors.Foreground;
-@@ -801,10 +805,10 @@
+@@ -801,10 +805,10 @@ Returns:
UINTN StartRow;
UINTN EndRow;
UINTN FStartRow;
@@ -1662,7 +5566,7 @@ Index: hexedit/libBufferImage.c
New.Colors.Foreground = Orig.Colors.Background;
New.Colors.Background = Orig.Colors.Foreground;
-@@ -870,7 +874,6 @@
+@@ -870,7 +874,6 @@ Returns:
}
FStartRow = StartRow;
@@ -1670,7 +5574,7 @@ Index: hexedit/libBufferImage.c
StartRow = TEXT_START_ROW + StartRow - HBufferImage.LowVisibleRow;
EndRow = TEXT_START_ROW + EndRow - HBufferImage.LowVisibleRow;
-@@ -980,6 +983,10 @@
+@@ -980,6 +983,10 @@ HBufferImageRead (
case MEM_BUFFER:
Status = HMemImageRead (MemOffset, MemSize, Recover);
break;
@@ -1681,7 +5585,7 @@ Index: hexedit/libBufferImage.c
}
if (EFI_ERROR (Status)) {
-@@ -1030,6 +1037,10 @@
+@@ -1030,6 +1037,10 @@ HBufferImageSave (
case MEM_BUFFER:
Status = HMemImageSave (MemOffset, MemSize);
break;
@@ -1692,7 +5596,7 @@ Index: hexedit/libBufferImage.c
}
if (EFI_ERROR (Status)) {
-@@ -1967,14 +1978,11 @@
+@@ -1967,14 +1978,11 @@ Returns:
--*/
{
@@ -1707,7 +5611,7 @@ Index: hexedit/libBufferImage.c
FRow = HBufferImage.BufferPosition.Row;
FCol = HBufferImage.BufferPosition.Column;
-@@ -1996,7 +2004,7 @@
+@@ -1996,7 +2004,7 @@ Returns:
//
// get correct line
//
@@ -1716,7 +5620,7 @@ Index: hexedit/libBufferImage.c
FRow -= Gap;
-@@ -2025,13 +2033,10 @@
+@@ -2025,13 +2033,10 @@ Returns:
--*/
{
@@ -1730,7 +5634,7 @@ Index: hexedit/libBufferImage.c
//
// curosr will at the high bit
//
-@@ -2157,7 +2162,6 @@
+@@ -2157,7 +2162,6 @@ Returns:
HEFI_EDITOR_LINE *Line;
EFI_LIST_ENTRY *Link;
@@ -1738,7 +5642,7 @@ Index: hexedit/libBufferImage.c
UINTN OldFCol;
UINTN OldFRow;
-@@ -2167,11 +2171,6 @@
+@@ -2167,11 +2171,6 @@ Returns:
EFI_STATUS Status;
@@ -1750,7 +5654,7 @@ Index: hexedit/libBufferImage.c
Size = HBufferImageGetTotalSize ();
if (Size < Count) {
-@@ -2300,7 +2299,6 @@
+@@ -2300,7 +2299,6 @@ Returns:
HEFI_EDITOR_LINE *Line;
EFI_LIST_ENTRY *Link;
@@ -1758,7 +5662,7 @@ Index: hexedit/libBufferImage.c
UINTN OldFCol;
UINTN OldFRow;
-@@ -2308,11 +2306,6 @@
+@@ -2308,11 +2306,6 @@ Returns:
UINTN NewPos;
@@ -1770,145 +5674,11 @@ Index: hexedit/libBufferImage.c
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 @@
+diff --git a/hexedit/libEditor.c b/hexedit/libEditor.c
+index f511020..ac085b7 100644
+--- a/hexedit/libEditor.c
++++ b/hexedit/libEditor.c
+@@ -20,7 +20,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
--*/
@@ -1917,7 +5687,7 @@ Index: hexedit/libEditor.c
HEFI_EDITOR_COLOR_ATTRIBUTES HOriginalColors;
INTN HOriginalMode;
-@@ -136,7 +136,7 @@
+@@ -136,7 +136,7 @@ Returns:
Status = BS->HandleProtocol (
In,
&gEfiSimplePointerProtocolGuid,
@@ -1926,7 +5696,7 @@ Index: hexedit/libEditor.c
);
if (EFI_ERROR (Status)) {
//
-@@ -159,7 +159,7 @@
+@@ -159,7 +159,7 @@ Returns:
Status = BS->HandleProtocol (
HandleBuffer[Index],
&gEfiSimplePointerProtocolGuid,
@@ -1935,7 +5705,7 @@ Index: hexedit/libEditor.c
);
if (!EFI_ERROR (Status)) {
break;
-@@ -182,37 +182,37 @@
+@@ -182,37 +182,37 @@ Returns:
//
Status = HMainTitleBarInit ();
if (EFI_ERROR (Status)) {
@@ -1979,7 +5749,7 @@ Index: hexedit/libEditor.c
return EFI_LOAD_ERROR;
}
//
-@@ -259,32 +259,32 @@
+@@ -259,32 +259,32 @@ Returns:
//
Status = HMainTitleBarCleanup ();
if (EFI_ERROR (Status)) {
@@ -2018,7 +5788,7 @@ Index: hexedit/libEditor.c
}
//
// restore old mode
-@@ -732,6 +732,9 @@
+@@ -732,6 +732,9 @@ Returns:
case MEM_BUFFER:
OldSize = HBufferImage.MemImage->Size;
break;
@@ -2028,29 +5798,87 @@ Index: hexedit/libEditor.c
}
if (LengthChange == FALSE) {
-Index: hexedit/libfileimage.h
-===================================================================
---- hexedit/libfileimage.h (revision 64)
-+++ hexedit/libfileimage.h (working copy)
-@@ -59,3 +59,4 @@
- );
+diff --git a/hexedit/libInputBar.c b/hexedit/libInputBar.c
+index 3a4cc7e..1cb911f 100644
+--- a/hexedit/libInputBar.c
++++ b/hexedit/libInputBar.c
+@@ -169,8 +169,6 @@ Returns:
+ UINTN Size;
+ EFI_STATUS Status;
+ BOOLEAN NoDisplay;
+- UINTN Limit;
+- UINTN PromptLen;
- #endif
-+
-Index: hexedit/libinputbar.h
-===================================================================
---- hexedit/libinputbar.h (revision 64)
-+++ hexedit/libinputbar.h (working copy)
-@@ -44,3 +44,4 @@
- );
+ //
+ // variable initialization
+@@ -190,6 +188,7 @@ Returns:
+ // back up the old screen attributes
+ //
+ Orig = HMainEditor.ColorAttributes;
++ New.Data = 0;
+ New.Colors.Foreground = Orig.Colors.Background;
+ New.Colors.Background = Orig.Colors.Foreground;
- #endif
-+
-Index: hexedit/libMenuBar.c
-===================================================================
---- hexedit/libMenuBar.c (revision 64)
-+++ hexedit/libMenuBar.c (working copy)
-@@ -222,7 +222,6 @@
+@@ -201,13 +200,7 @@ Returns:
+ HEditorClearLine (INPUT_BAR_LOCATION);
+
+ Out->SetCursorPosition (Out, 0, INPUT_BAR_LOCATION - 1);
+- PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBINPUTBAR_MAININPUTBAR), HiiHandle, HMainInputBar.Prompt);
+-
+- //
+- // that's the maximum input length that can be displayed on screen
+- //
+- PromptLen = StrLen (HMainInputBar.Prompt);
+- Limit = HMainEditor.ScreenSize.Column - PromptLen;
++ PrintToken (STRING_TOKEN (STR_HEXEDIT_LIBINPUTBAR_MAININPUTBAR), gHexEditHiiHandle, HMainInputBar.Prompt);
+
+ //
+ // this is a selection prompt, cursor will stay in edit area
+diff --git a/hexedit/libMemImage.c b/hexedit/libMemImage.c
+index 407bb2e..2fed45b 100644
+--- a/hexedit/libMemImage.c
++++ b/hexedit/libMemImage.c
+@@ -91,7 +91,7 @@ Returns:
+ Status = BS->LocateProtocol (
+ &gEfiPciRootBridgeIoProtocolGuid,
+ NULL,
+- &HMemImage.IoFncs
++ (VOID**)&HMemImage.IoFncs
+ );
+ if (Status == EFI_NOT_FOUND) {
+ //
+@@ -225,9 +225,6 @@ Returns:
+ 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 @@ Returns:
+ EFI_STATUS Status;
+ VOID *Buffer;
+
+- HEFI_EDITOR_ACTIVE_BUFFER_TYPE BufferTypeBackup;
+-
+ //
+ // not modified, so directly return
+ //
+@@ -353,7 +348,6 @@ Returns:
+ return EFI_SUCCESS;
+ }
+
+- BufferTypeBackup = HBufferImage.BufferType;
+ HBufferImage.BufferType = MEM_BUFFER;
+
+ Buffer = AllocatePool (Size);
+diff --git a/hexedit/libMenuBar.c b/hexedit/libMenuBar.c
+index 5ecb694..00bfa99 100644
+--- a/hexedit/libMenuBar.c
++++ b/hexedit/libMenuBar.c
+@@ -222,7 +222,6 @@ Returns:
CHAR16 *NameString;
CHAR16 *FunctionKeyString;
UINTN BufferSize;
@@ -2058,7 +5886,7 @@ Index: hexedit/libMenuBar.c
//
// variable initialization
-@@ -255,9 +254,9 @@
+@@ -255,9 +254,9 @@ Returns:
FunctionKeyString = AllocatePool (BufferSize);
#if (EFI_SPECIFICATION_VERSION < 0x0002000A)
@@ -2070,7 +5898,7 @@ Index: hexedit/libMenuBar.c
#endif
Width = max ((StrLen (NameString) + 6), 18);
-@@ -267,9 +266,9 @@
+@@ -267,9 +266,9 @@ Returns:
}
#if (EFI_SPECIFICATION_VERSION < 0x0002000A)
@@ -2082,7 +5910,7 @@ Index: hexedit/libMenuBar.c
#endif
if (Index >= 10) {
PrintAt (Col - 1, Row - 1, L"%E%s%N %H%s%N ", FunctionKeyString, NameString);
-@@ -1138,7 +1137,6 @@
+@@ -1138,7 +1137,6 @@ Returns:
// the file won't be saved
//
return EFI_SUCCESS;
@@ -2090,7 +5918,7 @@ Index: hexedit/libMenuBar.c
case L'c':
case L'C':
-@@ -1567,7 +1565,6 @@
+@@ -1567,7 +1565,6 @@ Returns:
--*/
{
UINTN Index;
@@ -2098,7 +5926,7 @@ Index: hexedit/libMenuBar.c
EFI_LIST_ENTRY *Link;
UINT8 *Buffer;
UINTN Count;
-@@ -1592,8 +1589,6 @@
+@@ -1592,8 +1589,6 @@ Returns:
Link = Link->Flink;
}
@@ -2107,80 +5935,154 @@ Index: hexedit/libMenuBar.c
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 @@
+diff --git a/hexedit/libMisc.h b/hexedit/libMisc.h
+index 979a7f0..5c2216b 100644
+--- a/hexedit/libMisc.h
++++ b/hexedit/libMisc.h
+@@ -20,7 +20,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+ #ifndef _LIB_MISC_H_
+ #define _LIB_MISC_H_
+
+-#include "Heditortype.h"
++#include "heditortype.h"
+
+ VOID
+ HEditorClearLine (
+@@ -108,3 +108,4 @@ HXtoi (
);
#endif
+
-Index: hexedit/hexedit.inf
-===================================================================
---- hexedit/hexedit.inf (revision 64)
-+++ hexedit/hexedit.inf (working copy)
-@@ -25,7 +25,7 @@
- COMPONENT_TYPE = APPLICATION
+diff --git a/hexedit/libStatusBar.c b/hexedit/libStatusBar.c
+index 59d3d4b..278b3ba 100644
+--- a/hexedit/libStatusBar.c
++++ b/hexedit/libStatusBar.c
+@@ -173,6 +173,7 @@ Returns:
+ // back up the screen attributes
+ //
+ Orig = HMainEditor.ColorAttributes;
++ New.Data = 0;
+ New.Colors.Foreground = Orig.Colors.Background;
+ New.Colors.Background = Orig.Colors.Foreground;
- [sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- HexeditStrings.uni
- heditor.h
- heditortype.h
-@@ -45,17 +45,17 @@
+diff --git a/hexedit/libTitleBar.c b/hexedit/libTitleBar.c
+index 9e7b9e9..cf010f5 100644
+--- a/hexedit/libTitleBar.c
++++ b/hexedit/libTitleBar.c
+@@ -166,6 +166,7 @@ Returns:
+ // backup the old screen attributes
+ //
+ Orig = HMainEditor.ColorAttributes;
++ New.Data = 0;
+ New.Colors.Foreground = Orig.Colors.Background;
+ New.Colors.Background = Orig.Colors.Foreground;
- [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./
+@@ -212,7 +213,7 @@ Returns:
+ // 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);
- [libraries.common]
- EfiShellLib
-@@ -75,11 +75,14 @@
- # we will specify some additional DEFINEs on the compile command line.
- #
- [nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeEFIHexEditor
+ for (Index = StrLen (FileNameTmp); Index < 35; Index++) {
+ Print (L" ");
+@@ -220,7 +221,7 @@ Returns:
+
+ } 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 @@ Returns:
+ 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 @@ Returns:
+
+ 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 @@ Returns:
+ 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,21 +281,26 @@ Returns:
+
+ 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;
+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeEFIHexEditor
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
++ default:
+ break;
+ }
+ //
+diff --git a/hexedit/libbufferimage.h b/hexedit/libbufferimage.h
+index 71b48c2..ed8c673 100644
+--- a/hexedit/libbufferimage.h
++++ b/hexedit/libbufferimage.h
+@@ -253,3 +253,4 @@ HBufferImageIsInSelectedArea (
+ );
--
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-
-\ No newline at end of file
-Index: hexedit/libdiskimage.c
-===================================================================
---- hexedit/libdiskimage.c (revision 64)
-+++ hexedit/libdiskimage.c (working copy)
-@@ -228,11 +228,7 @@
+ #endif
++
+diff --git a/hexedit/libclipboard.h b/hexedit/libclipboard.h
+index 1604fc5..766f089 100644
+--- a/hexedit/libclipboard.h
++++ b/hexedit/libclipboard.h
+@@ -43,3 +43,4 @@ HClipBoardGet (
+ );
+
+ #endif
++
+diff --git a/hexedit/libdiskimage.c b/hexedit/libdiskimage.c
+index 7e11ad0..5b67a76 100644
+--- a/hexedit/libdiskimage.c
++++ b/hexedit/libdiskimage.c
+@@ -228,11 +228,7 @@ Returns:
UINTN Bytes;
HEFI_EDITOR_LINE *Line;
@@ -2192,7 +6094,7 @@ Index: hexedit/libdiskimage.c
HBufferImage.BufferType = DISK_BUFFER;
DevicePath = (EFI_DEVICE_PATH_PROTOCOL *) ShellGetMap (DeviceName);
-@@ -246,7 +242,7 @@
+@@ -246,7 +242,7 @@ Returns:
Status = LibDevicePathToInterface (
&gEfiBlockIoProtocolGuid,
DevicePath,
@@ -2201,7 +6103,7 @@ Index: hexedit/libdiskimage.c
);
if (EFI_ERROR (Status)) {
HMainStatusBarSetStatusString (L"Read Disk Failed");
-@@ -269,8 +265,6 @@
+@@ -269,8 +265,6 @@ Returns:
return EFI_OUT_OF_RESOURCES;
}
@@ -2210,7 +6112,7 @@ Index: hexedit/libdiskimage.c
//
// read from disk
//
-@@ -405,10 +399,6 @@
+@@ -405,10 +399,6 @@ Returns:
VOID *Buffer;
UINTN Bytes;
@@ -2221,7 +6123,7 @@ Index: hexedit/libdiskimage.c
//
// if not modified, directly return
//
-@@ -416,7 +406,6 @@
+@@ -416,7 +406,6 @@ Returns:
return EFI_SUCCESS;
}
@@ -2229,7 +6131,7 @@ Index: hexedit/libdiskimage.c
HBufferImage.BufferType = DISK_BUFFER;
DevicePath = (EFI_DEVICE_PATH_PROTOCOL *) ShellGetMap (DeviceName);
-@@ -427,7 +416,7 @@
+@@ -427,7 +416,7 @@ Returns:
Status = LibDevicePathToInterface (
&gEfiBlockIoProtocolGuid,
DevicePath,
@@ -2238,7 +6140,7 @@ Index: hexedit/libdiskimage.c
);
if (EFI_ERROR (Status)) {
return Status;
-@@ -448,8 +437,6 @@
+@@ -448,8 +437,6 @@ Returns:
return Status;
}
@@ -2247,11 +6149,92 @@ Index: hexedit/libdiskimage.c
//
// write the buffer to disk
//
-Index: hexedit/main.c
-===================================================================
---- hexedit/main.c (revision 64)
-+++ hexedit/main.c (working copy)
-@@ -27,7 +27,7 @@
+diff --git a/hexedit/libdiskimage.h b/hexedit/libdiskimage.h
+index 505c857..4effe6c 100644
+--- a/hexedit/libdiskimage.h
++++ b/hexedit/libdiskimage.h
+@@ -58,3 +58,4 @@ HDiskImageSave (
+ );
+
+ #endif
++
+diff --git a/hexedit/libeditor.h b/hexedit/libeditor.h
+index 6c2e3d9..573eca6 100644
+--- a/hexedit/libeditor.h
++++ b/hexedit/libeditor.h
+@@ -47,3 +47,4 @@ HMainEditorBackup (
+ );
+
+ #endif
++
+diff --git a/hexedit/libfileimage.h b/hexedit/libfileimage.h
+index baff90c..5ae42b3 100644
+--- a/hexedit/libfileimage.h
++++ b/hexedit/libfileimage.h
+@@ -59,3 +59,4 @@ HFileImageSave (
+ );
+
+ #endif
++
+diff --git a/hexedit/libinputbar.h b/hexedit/libinputbar.h
+index 24a8973..f7f14ca 100644
+--- a/hexedit/libinputbar.h
++++ b/hexedit/libinputbar.h
+@@ -44,3 +44,4 @@ HMainInputBarSetStringSize (
+ );
+
+ #endif
++
+diff --git a/hexedit/libmemimage.h b/hexedit/libmemimage.h
+index 98c0c08..7cae8b7 100644
+--- a/hexedit/libmemimage.h
++++ b/hexedit/libmemimage.h
+@@ -55,3 +55,4 @@ HMemImageSave (
+ );
+
+ #endif
++
+diff --git a/hexedit/libmenubar.h b/hexedit/libmenubar.h
+index e3766e2..2ee2033 100644
+--- a/hexedit/libmenubar.h
++++ b/hexedit/libmenubar.h
+@@ -20,7 +20,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+ #ifndef _LIB_MENU_BAR_H_
+ #define _LIB_MENU_BAR_H_
+
+-#include "Heditortype.h"
++#include "heditortype.h"
+
+ EFI_STATUS
+ HMainMenuBarInit (
+@@ -94,3 +94,4 @@ HMainCommandExit (
+ );
+
+ #endif
++
+diff --git a/hexedit/libstatusbar.h b/hexedit/libstatusbar.h
+index eade183..6ee05a3 100644
+--- a/hexedit/libstatusbar.h
++++ b/hexedit/libstatusbar.h
+@@ -55,3 +55,4 @@ HMainStatusBarBackup (
+ );
+
+ #endif
++
+diff --git a/hexedit/libtitlebar.h b/hexedit/libtitlebar.h
+index b6045ab..948cd43 100644
+--- a/hexedit/libtitlebar.h
++++ b/hexedit/libtitlebar.h
+@@ -46,3 +46,4 @@ HMainTitleBarBackup (
+ );
+
+ #endif
++
+diff --git a/hexedit/main.c b/hexedit/main.c
+index 9c2a032..43340d8 100644
+--- a/hexedit/main.c
++++ b/hexedit/main.c
+@@ -27,7 +27,7 @@ extern UINT8 STRING_ARRAY_NAME[];
//
// Global Variables
//
@@ -2260,7 +6243,7 @@ Index: hexedit/main.c
#if (EFI_SPECIFICATION_VERSION < 0x0002000A)
EFI_HII_PROTOCOL *Hii;
#endif
-@@ -67,7 +67,7 @@
+@@ -67,7 +67,7 @@ SHELL_VAR_CHECK_ITEM HexeditCheckList[] = {
NULL,
0,
0,
@@ -2269,7 +6252,7 @@ Index: hexedit/main.c
}
};
-@@ -93,10 +93,10 @@
+@@ -93,10 +93,10 @@ PrintUsage (
VOID
)
{
@@ -2284,7 +6267,7 @@ Index: hexedit/main.c
Print (L"\n\n");
}
-@@ -147,7 +147,7 @@
+@@ -147,7 +147,7 @@ Returns:
EFI_SHELL_APP_INIT (ImageHandle, SystemTable);
#if (EFI_SPECIFICATION_VERSION < 0x0002000A)
@@ -2293,7 +6276,7 @@ Index: hexedit/main.c
if (EFI_ERROR (Status)) {
return Status;
}
-@@ -158,12 +158,12 @@
+@@ -158,12 +158,12 @@ Returns:
// Register our string package with HII and return the handle to it.
// If previously registered we will simply receive the handle
//
@@ -2308,7 +6291,7 @@ Index: hexedit/main.c
L"hexedit",
EFI_VERSION_1_10
);
-@@ -187,17 +187,17 @@
+@@ -187,17 +187,17 @@ Returns:
switch (RetCode) {
case VarCheckConflict:
@@ -2329,7 +6312,7 @@ Index: hexedit/main.c
break;
default:
-@@ -220,10 +220,10 @@
+@@ -220,10 +220,10 @@ Returns:
ChkPck.FlagCount > 2 ||
(ChkPck.FlagCount == 2 && LibCheckVarGetFlag (&ChkPck, L"-b") == NULL)
) {
@@ -2342,7 +6325,7 @@ Index: hexedit/main.c
Status = EFI_SUCCESS;
}
-@@ -233,13 +233,13 @@
+@@ -233,13 +233,13 @@ Returns:
Item = LibCheckVarGetFlag (&ChkPck, L"-d");
if (Item) {
if (3 < ChkPck.ValueCount) {
@@ -2358,7 +6341,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -249,7 +249,7 @@
+@@ -249,7 +249,7 @@ Returns:
Item = Item->Next;
Result = HXtoi (Item->VarStr, &Offset);
if (EFI_ERROR (Result)) {
@@ -2367,7 +6350,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -257,13 +257,13 @@
+@@ -257,13 +257,13 @@ Returns:
Item = Item->Next;
Result = HXtoi (Item->VarStr, &Size);
if (EFI_ERROR (Result)) {
@@ -2383,7 +6366,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -274,13 +274,13 @@
+@@ -274,13 +274,13 @@ Returns:
Item = LibCheckVarGetFlag (&ChkPck, L"-m");
if (Item) {
if (2 < ChkPck.ValueCount) {
@@ -2399,7 +6382,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -288,7 +288,7 @@
+@@ -288,7 +288,7 @@ Returns:
Item = ChkPck.VarList;
Result = HXtoi (Item->VarStr, &Offset);
if (EFI_ERROR (Result)) {
@@ -2408,7 +6391,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -296,20 +296,20 @@
+@@ -296,20 +296,20 @@ Returns:
Item = Item->Next;
Result = HXtoi (Item->VarStr, &Size);
if (EFI_ERROR (Result)) {
@@ -2432,7 +6415,7 @@ Index: hexedit/main.c
goto done;
}
-@@ -319,13 +319,13 @@
+@@ -319,13 +319,13 @@ Returns:
Item = LibCheckVarGetFlag (&ChkPck, L"-f");
if (Item) {
if (1 < ChkPck.ValueCount) {
@@ -2448,7 +6431,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -333,7 +333,7 @@
+@@ -333,7 +333,7 @@ Returns:
Item = ChkPck.VarList;
Name = Item->VarStr;
if (!HIsValidFileName (Name)) {
@@ -2457,7 +6440,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -345,20 +345,20 @@
+@@ -345,20 +345,20 @@ Returns:
if (Name != NULL) {
FreeName = TRUE;
} else {
@@ -2481,7 +6464,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -367,7 +367,7 @@
+@@ -367,7 +367,7 @@ Returns:
}
if (SI->RedirArgc != 0) {
@@ -2490,7 +6473,7 @@ Index: hexedit/main.c
Status = EFI_INVALID_PARAMETER;
goto done;
}
-@@ -376,7 +376,7 @@
+@@ -376,7 +376,7 @@ Returns:
if (EFI_ERROR (Status)) {
Out->ClearScreen (Out);
Out->EnableCursor (Out, TRUE);
@@ -2499,7 +6482,7 @@ Index: hexedit/main.c
goto done;
}
-@@ -421,7 +421,9 @@
+@@ -421,7 +421,9 @@ Returns:
FALSE
);
break;
@@ -2510,7 +6493,7 @@ Index: hexedit/main.c
}
if (!EFI_ERROR (Status)) {
-@@ -453,19 +455,19 @@
+@@ -453,19 +455,19 @@ Returns:
//
if (Status == EFI_SUCCESS) {
} else if (Status == EFI_OUT_OF_RESOURCES) {
@@ -2534,252 +6517,112 @@ Index: hexedit/main.c
}
}
-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 @@
- );
-
+diff --git a/inc/shellenv.h b/inc/shellenv.h
+index 1334f2c..10b28c9 100644
+--- a/inc/shellenv.h
++++ b/inc/shellenv.h
+@@ -492,3 +492,4 @@ UnInstallShellEnvironment (
#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"
+ #endif // _SHELLENV_H_
++
+diff --git a/inc/shelltypes.h b/inc/shelltypes.h
+index 1b6cc38..36de6c7 100644
+--- a/inc/shelltypes.h
++++ b/inc/shelltypes.h
+@@ -36,7 +36,7 @@ extern "C"
+ #endif
- VOID
- HEditorClearLine (
-@@ -108,3 +108,4 @@
- );
+ #include "Tiano.h"
+-#include "linkedlist.h"
++#include "LinkedList.h"
+ #include EFI_PROTOCOL_DEFINITION (FileInfo)
+ #include EFI_PROTOCOL_DEFINITION (SimpleFileSystem)
+@@ -183,3 +183,4 @@ typedef struct {
#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;
+diff --git a/load/load.c b/load/load.c
+index 44247cc..b268c58 100644
+--- a/load/load.c
++++ b/load/load.c
+@@ -60,7 +60,7 @@ SHELL_VAR_CHECK_ITEM LoadCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
}
- //
- // 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;
+diff --git a/load/load.h b/load/load.h
+index 477c816..746aa89 100644
+--- a/load/load.h
++++ b/load/load.h
+@@ -33,3 +33,4 @@ Revision History
}
- //
- // 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 @@
+diff --git a/load/load.inf b/load/load.inf
+index 3ba1dbf..6d1785d 100644
+--- a/load/load.inf
++++ b/load/load.inf
+@@ -39,23 +39,23 @@ FILE_GUID = 5B93B225-2E47-4a61-8EE5-B8EA42EE3EA8
COMPONENT_TYPE = APPLICATION
[sources.common]
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- PingStrings.uni
- Ping.h
- Ping.c
-
+ LoadStrings.uni
+ load.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\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)\
+ ../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/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]
EfiShellLib
-@@ -52,7 +52,6 @@
- ArchProtocolLib
- EdkGuidLib
- EdkFrameworkGuidLib
-- EfiDriverLib
-
- [libraries.Ia32]
- CpuIA32Lib
-@@ -64,9 +63,12 @@
- CpuIA32Lib
+@@ -70,6 +70,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
-- C_PROJ_FLAGS = $(C_PROJ_FLAGS)
- IMAGE_ENTRY_POINT=Ping
-- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+ IMAGE_ENTRY_POINT=InitializeLoad
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
-+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
++
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/ls/ls.c b/ls/ls.c
+index bfb4f9c..0d731d7 100644
+--- a/ls/ls.c
++++ b/ls/ls.c
+@@ -59,7 +59,7 @@ SHELL_VAR_CHECK_ITEM LsCheckList[] = {
NULL,
0,
0,
@@ -2788,106 +6631,82 @@ Index: Ping/Ping.c
}
};
-@@ -114,6 +114,8 @@
- UINT32 RttMin;
- UINT32 RttMax;
-
-+EFI_CPU_ARCH_PROTOCOL *gCpu = NULL;
-+
- STATIC
- UINT64
- GetTimerValue (
-@@ -135,7 +137,22 @@
-
- --*/
+@@ -199,7 +199,6 @@ Returns:
+ CHAR16 *PtrTwo;
+ CHAR16 *Path;
+ EFI_LIST_ENTRY DirList;
+- EFI_LIST_ENTRY *Link;
+ SHELL_FILE_ARG *Arg;
+ BOOLEAN WildcardsEncountered;
+ CHAR16 *Pattern;
+@@ -210,7 +209,6 @@ Returns:
+ Argv = SI->Argv;
+ PtrTwo = NULL;
+ InitializeListHead (&DirList);
+- Link = NULL;
+ Arg = NULL;
+ Pattern = NULL;
+ Status = EFI_SUCCESS;
+@@ -815,8 +813,6 @@ GetPattern (
+ CHAR16 *Path
+ )
{
-- 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;
- }
+-
+- EFI_STATUS Status;
+ CHAR16 *PtrOne;
+ CHAR16 *PtrTwo;
+ UINTN Index1;
+@@ -825,7 +821,6 @@ GetPattern (
+ BOOLEAN LeadingBlanks;
- 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
- }
- };
+ LeadingBlanks = TRUE;
+- Status = EFI_SUCCESS;
-@@ -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
- );
+ for (PtrOne = PtrTwo = Path; PtrOne < Path + StrLen (Path); PtrOne++) {
+ if ((*PtrOne) == ' ' && LeadingBlanks) {
+@@ -917,14 +912,14 @@ IsMatch (
-@@ -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 @@
- }
+ 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;
+diff --git a/ls/ls.h b/ls/ls.h
+index e967235..f0a5151 100644
+--- a/ls/ls.h
++++ b/ls/ls.h
+@@ -91,4 +91,5 @@ MainProc (
+ IN UINT16 VHlpToken
+ );
- #endif
+-#endif
+\ No newline at end of file
++#endif
+
-Index: time/time.inf
-===================================================================
---- time/time.inf (revision 64)
-+++ time/time.inf (working copy)
-@@ -40,24 +40,24 @@
+diff --git a/ls/ls.inf b/ls/ls.inf
+index 854a5b1..547fce8 100644
+--- a/ls/ls.inf
++++ b/ls/ls.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- TimeStrings.uni
- Time.c
- Time.h
-
+ LsStrings.uni
+ ls.c
+ ls.h
+
[includes.common]
.
- ..\Inc
@@ -2915,10 +6734,10 @@ Index: time/time.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeTime
+ IMAGE_ENTRY_POINT=InitializeLS
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -2927,20 +6746,11 @@ Index: time/time.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/mem/MemCommonPart.c b/mem/MemCommonPart.c
+index 54af027..b5ccc17 100644
+--- a/mem/MemCommonPart.c
++++ b/mem/MemCommonPart.c
+@@ -58,7 +58,7 @@ SHELL_VAR_CHECK_ITEM MemCheckList[] = {
NULL,
0,
0,
@@ -2949,28 +6759,165 @@ Index: mount/mount.c
}
};
-Index: mount/mount.h
-===================================================================
---- mount/mount.h (revision 64)
-+++ mount/mount.h (working copy)
-@@ -33,3 +33,4 @@
+@@ -149,7 +149,7 @@ Returns:
+ 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 @@ Returns:
+ //
+ 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 @@ Returns:
+ 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 @@ Returns:
+ 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 @@ Returns:
+ //
+ 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 @@ Returns:
+ return Status;
+ }
+
+- PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciIoWidthUint8, Address, Size, Buffer);
++ PciRootBridgeIo->Mem.Read (PciRootBridgeIo, EfiPciWidthUint8, Address, Size, Buffer);
+ } else {
+ Buffer = (UINT8 *) (UINTN) Address;
+ }
+diff --git a/mem/MemCommonPart.h b/mem/MemCommonPart.h
+index 3b34908..f1fd015 100644
+--- a/mem/MemCommonPart.h
++++ b/mem/MemCommonPart.h
+@@ -62,4 +62,4 @@ EFIMemStructsPrint (
+ IN EFI_BLOCK_IO_PROTOCOL *BlkIo
+ );
+
+-#endif
+\ No newline at end of file
++#endif
+diff --git a/mem/debug.h b/mem/debug.h
+index 2b02c89..8db1a9f 100644
+--- a/mem/debug.h
++++ b/mem/debug.h
+@@ -156,3 +156,4 @@ EFIStructsPrint (
+ extern EFI_HII_HANDLE HiiMemHandle;
+
#endif
+
-Index: mount/mount.inf
-===================================================================
---- mount/mount.inf (revision 64)
-+++ mount/mount.inf (working copy)
-@@ -40,24 +40,24 @@
+diff --git a/mem/efidump.c b/mem/efidump.c
+index d7b22cb..cf5382a 100644
+--- a/mem/efidump.c
++++ b/mem/efidump.c
+@@ -24,7 +24,7 @@ Revision History
+ --*/
+
+ #include "debug.h"
+-#include "Efipart.h"
++#include "EfiPart.h"
+ #include "EfiShellLib.h"
+
+ #include STRING_DEFINES_FILE
+@@ -320,13 +320,11 @@ DumpMemSystemTable (
+ 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 @@ DumpMemSystemTable (
+ 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 @@ DumpMemSystemTable (
+
+ 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);
+ }
+ }
+
+diff --git a/mem/mem.inf b/mem/mem.inf
+index 0561176..4ba34ad 100644
+--- a/mem/mem.inf
++++ b/mem/mem.inf
+@@ -25,7 +25,7 @@ FILE_GUID = 1B0B8206-74DC-4681-AA0D-039A9699EA56
+ COMPONENT_TYPE = APPLICATION
[sources.common]
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- MountStrings.uni
- mount.c
- mount.h
+ MemStrings.uni
+ DebugStrings.uni
+ mm.c
+@@ -34,17 +34,17 @@ COMPONENT_TYPE = APPLICATION
[includes.common]
.
@@ -2999,31 +6946,76 @@ Index: mount/mount.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
-
+@@ -63,9 +63,13 @@ COMPONENT_TYPE = APPLICATION
+ # we will specify some additional DEFINEs on the compile command line.
+ #
[nmake.common]
- IMAGE_ENTRY_POINT=MountMain
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=DumpMm
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: mkdir/mkdir.inf
-===================================================================
---- mkdir/mkdir.inf (revision 64)
-+++ mkdir/mkdir.inf (working copy)
-@@ -41,23 +41,23 @@
+diff --git a/memmap/memmap.c b/memmap/memmap.c
+index f7353ff..24da6e2 100644
+--- a/memmap/memmap.c
++++ b/memmap/memmap.c
+@@ -35,7 +35,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM MemmapCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- 0
++ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+ }
+ };
+
+@@ -216,7 +216,7 @@ Returns:
+ }
+
+ Bytes = LShiftU64 (Desc->NumberOfPages, 12);
+- Ptr = MemoryTypeStr (Desc->Type);
++ Ptr = MemoryTypeStr ((EFI_MEMORY_TYPE)Desc->Type);
+ PrintToken (
+ STRING_TOKEN (STR_MEMMAP_FIVE_ARGS),
+ HiiHandle,
+diff --git a/memmap/memmap.h b/memmap/memmap.h
+index d9f5d72..e32a0aa 100644
+--- a/memmap/memmap.h
++++ b/memmap/memmap.h
+@@ -33,3 +33,4 @@ Revision History
+ }
+
+ #endif
++
+diff --git a/memmap/memmap.inf b/memmap/memmap.inf
+index 1d68c61..48af15c 100644
+--- a/memmap/memmap.inf
++++ b/memmap/memmap.inf
+@@ -40,7 +40,7 @@ COMPONENT_TYPE = APPLICATION
+
[sources.common]
- MkdirStrings.uni
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- mkdir.c
- mkdir.h
-
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ memmapStrings.uni
+ memmap.c
+ memmap.h
+@@ -48,17 +48,17 @@ COMPONENT_TYPE = APPLICATION
+
[includes.common]
.
- ..\Inc
@@ -3051,10 +7043,10 @@ Index: mkdir/mkdir.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -73,7 +73,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeMkDir
+ IMAGE_ENTRY_POINT=InitializeMemmap
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -3063,11 +7055,11 @@ Index: mkdir/mkdir.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: mkdir/mkdir.c
-===================================================================
---- mkdir/mkdir.c (revision 64)
-+++ mkdir/mkdir.c (working copy)
-@@ -49,7 +49,7 @@
+diff --git a/mkdir/mkdir.c b/mkdir/mkdir.c
+index 79a08ca..5d8c5f5 100644
+--- a/mkdir/mkdir.c
++++ b/mkdir/mkdir.c
+@@ -49,7 +49,7 @@ MkDir (
//
// Global Variables
//
@@ -3076,7 +7068,7 @@ Index: mkdir/mkdir.c
EFI_GUID EfiMkdirGuid = EFI_MKDIR_GUID;
SHELL_VAR_CHECK_ITEM MkdirCheckList[] = {
{
-@@ -68,7 +68,7 @@
+@@ -68,7 +68,7 @@ SHELL_VAR_CHECK_ITEM MkdirCheckList[] = {
NULL,
0,
0,
@@ -3085,11 +7077,11 @@ Index: mkdir/mkdir.c
}
};
-Index: mkdir/mkdir.h
-===================================================================
---- mkdir/mkdir.h (revision 64)
-+++ mkdir/mkdir.h (working copy)
-@@ -29,4 +29,5 @@
+diff --git a/mkdir/mkdir.h b/mkdir/mkdir.h
+index 20f8068..2da2b13 100644
+--- a/mkdir/mkdir.h
++++ b/mkdir/mkdir.h
+@@ -29,4 +29,5 @@ Revision History
0x75ecb57f, 0x4264, 0x49d2, 0x98, 0xe6, 0x39, 0x1a, 0x32, 0x17, 0x9d, 0xf2 \
}
@@ -3097,52 +7089,19 @@ Index: mkdir/mkdir.h
\ 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 @@
+diff --git a/mkdir/mkdir.inf b/mkdir/mkdir.inf
+index e49daac..4f98af0 100644
+--- a/mkdir/mkdir.inf
++++ b/mkdir/mkdir.inf
+@@ -41,23 +41,23 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
- PciStrings.uni
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- pci.c
- pci.h
- pci_class.h
-@@ -49,17 +49,17 @@
-
+ MkdirStrings.uni
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ mkdir.c
+ mkdir.h
+
[includes.common]
.
- ..\Inc
@@ -3170,10 +7129,10 @@ Index: pci/pci.inf
[libraries.common]
EfiShellLib
-@@ -74,7 +74,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=PciDump
+ IMAGE_ENTRY_POINT=InitializeMkDir
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -3182,47 +7141,47 @@ Index: pci/pci.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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_
+diff --git a/mm/mm.c b/mm/mm.c
+index 033849b..cb53465 100644
+--- a/mm/mm.c
++++ b/mm/mm.c
+@@ -49,18 +49,18 @@ DumpIoModify (
--#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 @@
+ 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
);
- #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 @@
+ 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 @@ GetHex (
+ //
// 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[] = {
+-EFI_HII_HANDLE HiiHandle;
++STATIC EFI_HII_HANDLE HiiHandle;
+ EFI_GUID EfiIomodGuid = EFI_IOMOD_GUID;
+ SHELL_VAR_CHECK_ITEM IomodCheckList[] = {
{
-@@ -375,7 +375,7 @@
+@@ -134,7 +134,7 @@ SHELL_VAR_CHECK_ITEM IomodCheckList[] = {
NULL,
0,
0,
@@ -3231,84 +7190,139 @@ Index: pci/pci.c
}
};
-@@ -1034,7 +1034,7 @@
- Status = BS->HandleProtocol (
- Handle,
- &gEfiPciRootBridgeIoProtocolGuid,
-- IoDev
-+ (VOID**)IoDev
- );
+@@ -146,13 +146,13 @@ EFI_BOOTSHELL_CODE(
- 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);
- }
+ 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
+ );
-- 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
- );
+ EFI_STATUS
+@@ -207,12 +207,11 @@ Notes:
+ 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 @@ Notes:
+ 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 @@ Notes:
+ Width = EfiPciWidthUint8;
+ Size = 1;
+ AccessType = EfiMemory;
+- AddressStr = NULL;
+ ValueStr = NULL;
+ Interactive = TRUE;
- 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
- );
+@@ -662,10 +660,10 @@ Done:
- //
-Index: memmap/memmap.h
-===================================================================
---- memmap/memmap.h (revision 64)
-+++ memmap/memmap.h (working copy)
-@@ -33,3 +33,4 @@
+ 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 @@ ReadMem (
+
+ 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 @@ GetHex (
+ }
+
+ 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 @@ GetHex (
+
+ 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
+ )
+ /*++
+
+diff --git a/mm/mm.h b/mm/mm.h
+index 8306f4c..0890e50 100644
+--- a/mm/mm.h
++++ b/mm/mm.h
+@@ -33,3 +33,4 @@ Revision History
}
#endif
+
-Index: memmap/memmap.inf
-===================================================================
---- memmap/memmap.inf (revision 64)
-+++ memmap/memmap.inf (working copy)
-@@ -40,7 +40,7 @@
-
+diff --git a/mm/mm.inf b/mm/mm.inf
+index 4857d9e..97221eb 100644
+--- a/mm/mm.inf
++++ b/mm/mm.inf
+@@ -41,23 +41,23 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
+ MmStrings.uni
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- memmapStrings.uni
- memmap.c
- memmap.h
-@@ -48,17 +48,17 @@
+ mm.c
+ mm.h
[includes.common]
.
@@ -3337,10 +7351,10 @@ Index: memmap/memmap.inf
[libraries.common]
EfiShellLib
-@@ -73,7 +73,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeMemmap
+ IMAGE_ENTRY_POINT=DumpIoModify
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -3349,20 +7363,11 @@ Index: memmap/memmap.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/mode/mode.c b/mode/mode.c
+index becf429..e49df84 100644
+--- a/mode/mode.c
++++ b/mode/mode.c
+@@ -53,7 +53,7 @@ SHELL_VAR_CHECK_ITEM ModeCheckList[] = {
NULL,
0,
0,
@@ -3371,37 +7376,29 @@ Index: memmap/memmap.c
}
};
-@@ -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;
+diff --git a/mode/mode.h b/mode/mode.h
+index eadbac1..3c4560b 100644
+--- a/mode/mode.h
++++ b/mode/mode.h
+@@ -30,3 +30,4 @@ Revision History
+ }
#endif
+
-Index: dblk/dblk.inf
-===================================================================
---- dblk/dblk.inf (revision 64)
-+++ dblk/dblk.inf (working copy)
-@@ -26,23 +26,23 @@
+diff --git a/mode/mode.inf b/mode/mode.inf
+index 47e5c80..98ea62e 100644
+--- a/mode/mode.inf
++++ b/mode/mode.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
+
[sources.common]
- DblkStrings.uni
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- dblk.c
- efidump.c
-
+ ModeStrings.uni
+ mode.c
+ mode.h
+
[includes.common]
.
- ..\Inc
@@ -3429,99 +7426,32 @@ Index: dblk/dblk.inf
[libraries.common]
EfiShellLib
-@@ -61,11 +61,16 @@
- # we will specify some additional DEFINEs on the compile command line.
- #
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
+
[nmake.common]
-+ IMAGE_ENTRY_POINT=DumpBlockDev
+ IMAGE_ENTRY_POINT=InitializeMode
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=DumpBlockDev
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-
-+
-
-\ No newline at end of file
-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 @@
+diff --git a/mount/mount.c b/mount/mount.c
+index fa32b1f..6825511 100644
+--- a/mount/mount.c
++++ b/mount/mount.c
+@@ -36,7 +36,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM MountCheckList[] = {
NULL,
0,
0,
@@ -3530,29 +7460,29 @@ Index: dblk/dblk.c
}
};
-Index: date/date.h
-===================================================================
---- date/date.h (revision 64)
-+++ date/date.h (working copy)
-@@ -32,3 +32,4 @@
+diff --git a/mount/mount.h b/mount/mount.h
+index afd795e..ce65e8e 100644
+--- a/mount/mount.h
++++ b/mount/mount.h
+@@ -33,3 +33,4 @@ Revision History
}
#endif
+
-Index: date/date.inf
-===================================================================
---- date/date.inf (revision 64)
-+++ date/date.inf (working copy)
-@@ -40,24 +40,24 @@
+diff --git a/mount/mount.inf b/mount/mount.inf
+index 922c490..e0154e2 100644
+--- a/mount/mount.inf
++++ b/mount/mount.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- DateStrings.uni
- Date.c
- Date.h
-
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ MountStrings.uni
+ mount.c
+ mount.h
+
[includes.common]
.
- ..\Inc
@@ -3580,10 +7510,10 @@ Index: date/date.inf
[libraries.common]
EfiShellLib
-@@ -71,7 +71,12 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeDate
+ IMAGE_ENTRY_POINT=MountMain
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -3592,23 +7522,20 @@ Index: date/date.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-+
-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 @@
+diff --git a/mv/mv.c b/mv/mv.c
+index 3b04021..9eefd23 100644
+--- a/mv/mv.c
++++ b/mv/mv.c
+@@ -36,7 +36,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM MvCheckList[] = {
NULL,
0,
0,
@@ -3617,52 +7544,31 @@ Index: date/date.c
}
};
-@@ -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
- }
- };
+diff --git a/mv/mv.h b/mv/mv.h
+index 6ed33eb..2dbf314 100644
+--- a/mv/mv.h
++++ b/mv/mv.h
+@@ -33,4 +33,4 @@ Revision History
-Index: rm/rm.h
-===================================================================
---- rm/rm.h (revision 64)
-+++ rm/rm.h (working copy)
-@@ -59,3 +59,4 @@
- );
+ #define EFI_FILE_STRING_SIZE 260
+
+-#endif
+\ No newline at end of file
++#endif
+diff --git a/mv/mv.inf b/mv/mv.inf
+index b52e28d..46000f0 100644
+--- a/mv/mv.inf
++++ b/mv/mv.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
- #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
-
+ MvStrings.uni
+ mv.c
+ mv.h
+
[includes.common]
.
- ..\Inc
@@ -3690,10 +7596,10 @@ Index: rm/rm.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeRM
+ IMAGE_ENTRY_POINT=InitializeMv
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -3702,99 +7608,155 @@ Index: rm/rm.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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
+diff --git a/newshell/FakeHii.c b/newshell/FakeHii.c
+index c187b47..5dff3ad 100644
+--- a/newshell/FakeHii.c
++++ b/newshell/FakeHii.c
+@@ -196,7 +196,7 @@ FakeUninstallHiiDatabase (
+ Status = BS->HandleProtocol (
+ mFakeHiiHandle,
+ &gEfiHiiProtocolGuid,
+- &FakeHii
++ (VOID**)&FakeHii
+ );
+ Status = BS->UninstallProtocolInterface (
+ mFakeHiiHandle,
+@@ -320,7 +320,7 @@ InsertStringPackage (
+ 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 @@ FakeHiiGetString (
+ 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;
+ }
+diff --git a/newshell/FakeHii.h b/newshell/FakeHii.h
+index a73332b..4c34460 100644
+--- a/newshell/FakeHii.h
++++ b/newshell/FakeHii.h
+@@ -479,3 +479,4 @@ extern BOOLEAN gHiiInitialized;
+ #endif
-@@ -149,7 +149,7 @@
- return EFI_SUCCESS;
- }
+ #endif
++
+diff --git a/newshell/init.c b/newshell/init.c
+index fd4adf6..fe73711 100644
+--- a/newshell/init.c
++++ b/newshell/init.c
+@@ -23,7 +23,7 @@ Abstract:
+ #include "nshell.h"
-- Address = (AddressStr) ? Xtoi (AddressStr) : (UINT64) SystemTable;
-+ Address = (AddressStr) ? Xtoi (AddressStr) : (UINT64)(UINTN) SystemTable;
- Size = (SizeStr) ? Xtoi (SizeStr) : 512;
+ 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 @@ _GetFsDpOfImg (
+ 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 @@ _DoInit (
//
-@@ -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);
+ Status = LibLocateProtocol (
+ &gEfiConsoleControlProtocolGuid,
+- &ConsoleControl
++ (VOID**)&ConsoleControl
+ );
+ if (!EFI_ERROR (Status)) {
+ Status = ConsoleControl->GetMode (ConsoleControl, &mOldCurrentMode, NULL, NULL);
+@@ -342,7 +342,7 @@ _EnableShellEnv (
+ Status = _ShellLoadEnvDriver (ImageHandle);
+ )
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;
+- 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 @@ _InstallShellInterface (
+ *IsRootInstance = TRUE;
}
-@@ -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 @@
+
+- Status = LibLocateProtocol (&ShellEnvProtocol, &SE);
++ Status = LibLocateProtocol (&ShellEnvProtocol, (VOID**)&SE);
+ ASSERT (!EFI_ERROR (Status));
+ SI = SE->NewShell (ImageHandle);
+
+@@ -543,7 +543,7 @@ _CleanUpOnExit (
//
- 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;
- }
+ ConsoleControlStatus = LibLocateProtocol (
+ &gEfiConsoleControlProtocolGuid,
+- &ConsoleControl
++ (VOID**)&ConsoleControl
+ );
+ if (!EFI_ERROR (ConsoleControlStatus)) {
+ ConsoleControlStatus = ConsoleControl->GetMode (ConsoleControl, &CurrentMode, NULL, NULL);
+@@ -709,7 +709,7 @@ Returns:
+ //
+ SE2->IncrementShellNestingLevel ();
-- 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
- );
+- while (Status != -1) {
++ while (Status != (EFI_STATUS) -1) {
+ Status = NShellPrompt (ImageHandle);
+ EFI_NT_EMULATOR_CODE (
+ //
+@@ -723,7 +723,7 @@ Returns:
+ Status = BS->HandleProtocol (
+ ImageHandle,
+ &ShellInterfaceProtocol,
+- &SI
++ (VOID**)&SI
+ );
+ ASSERT (!EFI_ERROR (Status));
+ }
+diff --git a/newshell/nshell.h b/newshell/nshell.h
+index 5c58410..c2a3a9e 100644
+--- a/newshell/nshell.h
++++ b/newshell/nshell.h
+@@ -58,4 +58,5 @@ extern EFI_SHELL_ENVIRONMENT *SE;
+ #define EFI_NO_MONOSHELL_CODE(code) code
+ #endif
-#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
++
+diff --git a/newshell/nshell.inf b/newshell/nshell.inf
+index 22479b0..405e23c 100644
+--- a/newshell/nshell.inf
++++ b/newshell/nshell.inf
+@@ -26,24 +26,24 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
+ NshellStrings.uni
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- MemStrings.uni
- DebugStrings.uni
- mm.c
-@@ -34,17 +34,17 @@
-
+ init.c
+ nshell.h
+ fakehii.c
+
[includes.common]
.
- ..\Inc
@@ -3822,106 +7784,39 @@ Index: mem/mem.inf
[libraries.common]
EfiShellLib
-@@ -63,9 +63,13 @@
+@@ -63,11 +63,13 @@ COMPONENT_TYPE = APPLICATION
# we will specify some additional DEFINEs on the compile command line.
#
[nmake.common]
-+ IMAGE_ENTRY_POINT=DumpMm
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeShell
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=DumpMm
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL=2
+-
++ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+-
+\ No newline at end of file
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/openinfo/openinfo.c b/openinfo/openinfo.c
+index 9b3356c..16274fe 100644
+--- a/openinfo/openinfo.c
++++ b/openinfo/openinfo.c
+@@ -36,7 +36,7 @@ extern UINT8 STRING_ARRAY_NAME[];
+ //
+ // 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 @@ SHELL_VAR_CHECK_ITEM OpeninfoCheckList[] = {
NULL,
0,
0,
@@ -3930,82 +7825,29 @@ Index: ls/ls.c
}
};
-@@ -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
- );
+diff --git a/openinfo/openinfo.h b/openinfo/openinfo.h
+index fdd070d..56ed64a 100644
+--- a/openinfo/openinfo.h
++++ b/openinfo/openinfo.h
+@@ -33,3 +33,4 @@ Revision History
+ }
--#endif
-\ No newline at end of file
-+#endif
+ #endif
+
-Index: ls/ls.inf
-===================================================================
---- ls/ls.inf (revision 64)
-+++ ls/ls.inf (working copy)
-@@ -40,24 +40,24 @@
-
+diff --git a/openinfo/openinfo.inf b/openinfo/openinfo.inf
+index 638462d..8bc1e18 100644
+--- a/openinfo/openinfo.inf
++++ b/openinfo/openinfo.inf
+@@ -41,24 +41,24 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- LsStrings.uni
- ls.c
- ls.h
-
+ OPeninfoStrings.uni
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ openinfo.c
+ openinfo.h
+
+
[includes.common]
.
- ..\Inc
@@ -4033,10 +7875,10 @@ Index: ls/ls.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -73,7 +73,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeLS
+ IMAGE_ENTRY_POINT=OpeninfoMain
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -4045,11 +7887,29 @@ Index: ls/ls.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: stall/stall.c
-===================================================================
---- stall/stall.c (revision 64)
-+++ stall/stall.c (working copy)
-@@ -50,7 +50,7 @@
+diff --git a/pci/pci.c b/pci/pci.c
+index 8dc0dba..bb587c9 100644
+--- a/pci/pci.c
++++ b/pci/pci.c
+@@ -334,7 +334,7 @@ PCIE_EXPLAIN_STRUCT PcieExplainList[] = {
+ {
+ 0,
+ 0,
+- 0,
++ (PCIE_CAPREG_FIELD_WIDTH)0,
+ NULL,
+ PcieExplainTypeMax
+ }
+@@ -344,7 +344,7 @@ PCIE_EXPLAIN_STRUCT PcieExplainList[] = {
+ // 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 @@ SHELL_VAR_CHECK_ITEM PciCheckList[] = {
NULL,
0,
0,
@@ -4058,28 +7918,93 @@ Index: stall/stall.c
}
};
-Index: stall/stall.h
-===================================================================
---- stall/stall.h (revision 64)
-+++ stall/stall.h (working copy)
-@@ -30,3 +30,4 @@
+@@ -1034,7 +1034,7 @@ Returns:
+ Status = BS->HandleProtocol (
+ Handle,
+ &gEfiPciRootBridgeIoProtocolGuid,
+- IoDev
++ (VOID**)IoDev
+ );
+
+ if (EFI_ERROR (Status)) {
+@@ -1043,7 +1043,7 @@ Returns:
+ //
+ // 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 @@ Returns:
+ PrintToken (STRING_TOKEN (STR_PCI2_SINGLE_FUNCTION), HiiHandle);
}
- #endif
+- 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 @@ Returns:
+ );
+ CapPtr = ConfigSpace->NonCommon.CardBus.CapabilitiesPtr;
+ break;
+
-Index: stall/stall.inf
-===================================================================
---- stall/stall.inf (revision 64)
-+++ stall/stall.inf (working copy)
-@@ -40,24 +40,24 @@
++ default:
++ Status = EFI_UNSUPPORTED;
+ }
+ //
+ // If Status bit4 is 1, dump or explain capability structure
+@@ -1956,7 +1959,7 @@ Returns:
+ 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 @@ Returns:
+ 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
+ );
+
+ //
+diff --git a/pci/pci.h b/pci/pci.h
+index 0716bee..42a5870 100644
+--- a/pci/pci.h
++++ b/pci/pci.h
+@@ -30,7 +30,7 @@ Revision History
+ 0x388da6c3, 0x3447, 0x4b1f, 0xa0, 0xba, 0xa9, 0xe8, 0xa2, 0x87, 0xf1, 0x76 \
+ }
+
+-#include "TIANO.h"
++#include "Tiano.h"
+
+ typedef enum {
+ PciDevice,
+@@ -477,3 +477,4 @@ typedef struct {
+ #pragma pack()
+ #endif // _PCI_H_
++
+diff --git a/pci/pci.inf b/pci/pci.inf
+index d4499d6..2c559a5 100644
+--- a/pci/pci.inf
++++ b/pci/pci.inf
+@@ -41,7 +41,7 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
+ PciStrings.uni
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- stallStrings.uni
- stall.c
- stall.h
+ pci.c
+ pci.h
+ pci_class.h
+@@ -49,17 +49,17 @@ COMPONENT_TYPE = APPLICATION
[includes.common]
.
@@ -4108,10 +8033,10 @@ Index: stall/stall.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -74,7 +74,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeStall
+ IMAGE_ENTRY_POINT=PciDump
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -4120,20 +8045,42 @@ Index: stall/stall.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: DeviceTree/devicetree.c
-===================================================================
---- DeviceTree/devicetree.c (revision 64)
-+++ DeviceTree/devicetree.c (working copy)
-@@ -36,7 +36,7 @@
+diff --git a/pci/pci_class.c b/pci/pci_class.c
+index caffe6d..14aa88d 100644
+--- a/pci/pci_class.c
++++ b/pci/pci_class.c
+@@ -30,7 +30,7 @@ Revision History
//
// 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 @@
+
+ PCI_CLASS_ENTRY gClassStringList[];
+
+diff --git a/pci/pci_class.h b/pci/pci_class.h
+index c7fff0c..0d6bea6 100644
+--- a/pci/pci_class.h
++++ b/pci/pci_class.h
+@@ -24,7 +24,7 @@ Revision History
+ #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 @@ PciPrintClassCode (
+ );
+
+ #endif // _PCI_CLASS_H_
++
+diff --git a/reset/reset.c b/reset/reset.c
+index 497b693..a5208b9 100644
+--- a/reset/reset.c
++++ b/reset/reset.c
+@@ -61,7 +61,7 @@ SHELL_VAR_CHECK_ITEM ResetCheckList[] = {
NULL,
0,
0,
@@ -4142,29 +8089,29 @@ Index: DeviceTree/devicetree.c
}
};
-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 \
+diff --git a/reset/reset.h b/reset/reset.h
+index 737fa11..e81c69a 100644
+--- a/reset/reset.h
++++ b/reset/reset.h
+@@ -32,3 +32,4 @@ Revision History
}
+
#endif
+
-Index: DeviceTree/devicetree.inf
-===================================================================
---- DeviceTree/devicetree.inf (revision 64)
-+++ DeviceTree/devicetree.inf (working copy)
-@@ -40,24 +40,24 @@
+diff --git a/reset/reset.inf b/reset/reset.inf
+index 3af6b2c..5d36446 100644
+--- a/reset/reset.inf
++++ b/reset/reset.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- DevicetreeStrings.uni
- devicetree.c
- devicetree.h
-
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ ResetStrings.uni
+ Reset.c
+ Reset.h
+
[includes.common]
.
- ..\Inc
@@ -4192,10 +8139,10 @@ Index: DeviceTree/devicetree.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=DevicetreeMain
+ IMAGE_ENTRY_POINT=InitializeReset
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -4204,60 +8151,40 @@ Index: DeviceTree/devicetree.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/rm/rm.c b/rm/rm.c
+index 792a5dc..7d0c2c8 100644
+--- a/rm/rm.c
++++ b/rm/rm.c
+@@ -54,7 +54,7 @@ SHELL_VAR_CHECK_ITEM RmCheckList[] = {
NULL,
0,
0,
-- 0
-+ (SHELL_VAR_CHECK_FLAG_TYPE) 0
+- FALSE
++ (SHELL_VAR_CHECK_FLAG_TYPE) FALSE
}
};
-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;
+diff --git a/rm/rm.h b/rm/rm.h
+index 837ca7c..e2d5117 100644
+--- a/rm/rm.h
++++ b/rm/rm.h
+@@ -59,3 +59,4 @@ RemoveRM (
+ );
#endif
+
-Index: TelnetMgmt/TelnetMgmt.inf
-===================================================================
---- TelnetMgmt/TelnetMgmt.inf (revision 64)
-+++ TelnetMgmt/TelnetMgmt.inf (working copy)
-@@ -25,23 +25,23 @@
- COMPONENT_TYPE = APPLICATION
+diff --git a/rm/rm.inf b/rm/rm.inf
+index 0da05e0..45b5edb 100644
+--- a/rm/rm.inf
++++ b/rm/rm.inf
+@@ -41,23 +41,23 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- TelnetMgmtStrings.uni
- TelnetMgmt.c
+ RmStrings.uni
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ rm.h
+ rm.c
[includes.common]
.
@@ -4286,59 +8213,32 @@ Index: TelnetMgmt/TelnetMgmt.inf
[libraries.common]
EfiShellLib
-@@ -55,6 +55,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeTelnetMgmt
+ IMAGE_ENTRY_POINT=InitializeRM
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-+
+
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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;
- }
+diff --git a/sermode/sermode.c b/sermode/sermode.c
+index b59e801..d03c621 100644
+--- a/sermode/sermode.c
++++ b/sermode/sermode.c
+@@ -35,7 +35,7 @@ extern UINT8 STRING_ARRAY_NAME[];
- 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 @@
+ #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 @@ SHELL_VAR_CHECK_ITEM SermodeCheckList[] = {
NULL,
0,
0,
@@ -4347,128 +8247,91 @@ Index: shellenv/echo.c
}
};
-Index: shellenv/shelle.h
-===================================================================
---- shellenv/shelle.h (revision 64)
-+++ shellenv/shelle.h (working copy)
-@@ -2074,3 +2074,4 @@
- );
+@@ -104,7 +104,7 @@ iDisplaySettings (
- #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;
+- 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 @@ Returns:
+ continue;
}
-- if (ExecuteResult == -1) {
-+ if (ExecuteResult == (EFI_STATUS) -1) {
- SE2->DecrementShellNestingLevel ();
- if (SE2->IsRootShell ()) {
- goto Done;
-@@ -2774,7 +2763,7 @@
- Status = _ResumePreviousMode ();
+- Status = BS->HandleProtocol (Handles[Index], &gEfiSerialIoProtocolGuid, &SerialIo);
++ Status = BS->HandleProtocol (Handles[Index], &gEfiSerialIoProtocolGuid, (VOID**)&SerialIo);
+ if (!EFI_ERROR (Status)) {
+ Status = SerialIo->SetAttributes (
+ SerialIo,
+diff --git a/sermode/sermode.h b/sermode/sermode.h
+index 71a719b..7f38d4c 100644
+--- a/sermode/sermode.h
++++ b/sermode/sermode.h
+@@ -32,3 +32,4 @@ Revision History
}
-- 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"
+ #endif
++
+diff --git a/sermode/sermode.inf b/sermode/sermode.inf
+index 71f3c66..4954400 100644
+--- a/sermode/sermode.inf
++++ b/sermode/sermode.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
- 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;
+ [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./
- case MSG_IPv6_DP:
-- IPv6DevicePath = (IPv6_DEVICE_PATH *) DevicePath;
- PrintToken (STRING_TOKEN (STR_SHELLENV_DPROT_NOT_AVAIL), HiiEnvHandle);
- break;
+ [libraries.common]
+ EfiShellLib
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
-@@ -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;
- }
+ [nmake.common]
+ IMAGE_ENTRY_POINT=InitializeSerialMode
++
++[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
- 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 @@
++[nmake.ARM, nmake.AARCH64]
++ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+diff --git a/shellenv/Connect.c b/shellenv/Connect.c
+index 71ecf0b..51ec714 100644
+--- a/shellenv/Connect.c
++++ b/shellenv/Connect.c
+@@ -51,7 +51,7 @@ SHELL_VAR_CHECK_ITEM ConnectCheckList[] = {
NULL,
0,
0,
@@ -4477,7 +8340,7 @@ Index: shellenv/Connect.c
}
};
-@@ -78,7 +78,7 @@
+@@ -78,7 +78,7 @@ SHELL_VAR_CHECK_ITEM DisconnectCheckList[] = {
NULL,
0,
0,
@@ -4486,7 +8349,7 @@ Index: shellenv/Connect.c
}
};
-@@ -105,7 +105,7 @@
+@@ -105,7 +105,7 @@ SHELL_VAR_CHECK_ITEM ReconnectCheckList[] = {
NULL,
0,
0,
@@ -4495,7 +8358,7 @@ Index: shellenv/Connect.c
}
};
-@@ -333,7 +333,7 @@
+@@ -333,7 +333,7 @@ Returns:
Status = BS->HandleProtocol (
HandleBuffer[0],
&gEfiDevicePathProtocolGuid,
@@ -4504,7 +8367,7 @@ Index: shellenv/Connect.c
);
if (EFI_ERROR (Status)) {
DriverBindingHandleCount = 1;
-@@ -349,7 +349,7 @@
+@@ -349,7 +349,7 @@ Returns:
Status = BS->HandleProtocol (
HandleBuffer[0],
&gEfiDevicePathProtocolGuid,
@@ -4513,7 +8376,7 @@ Index: shellenv/Connect.c
);
if (EFI_ERROR (Status)) {
PrintToken (
-@@ -368,7 +368,7 @@
+@@ -368,7 +368,7 @@ Returns:
Status = BS->HandleProtocol (
HandleBuffer[1],
&gEfiDriverBindingProtocolGuid,
@@ -4522,7 +8385,7 @@ Index: shellenv/Connect.c
);
if (EFI_ERROR (Status)) {
PrintToken (
-@@ -407,7 +407,7 @@
+@@ -407,7 +407,7 @@ Returns:
Status = BS->HandleProtocol (
AllHandleBuffer[Index],
&gEfiDriverBindingProtocolGuid,
@@ -4531,7 +8394,7 @@ Index: shellenv/Connect.c
);
if (EFI_ERROR (Status)) {
DeviceHandleBuffer[DeviceHandleCount++] = AllHandleBuffer[Index];
-@@ -1052,7 +1052,7 @@
+@@ -1052,7 +1052,7 @@ SEnvConnectConsole (
Status = BS->HandleProtocol (
*ConsoleHandle,
ConsoleGuid,
@@ -4540,7 +8403,7 @@ Index: shellenv/Connect.c
);
}
-@@ -1079,7 +1079,7 @@
+@@ -1079,7 +1079,7 @@ SEnvConnectConsole (
Status = BS->HandleProtocol (
AllHandleBuffer[Index],
&gEfiDevicePathProtocolGuid,
@@ -4549,7 +8412,7 @@ Index: shellenv/Connect.c
);
if (!EFI_ERROR (Status)) {
ConsoleIndex = Index;
-@@ -1095,7 +1095,7 @@
+@@ -1095,7 +1095,7 @@ SEnvConnectConsole (
BS->HandleProtocol (
*ConsoleHandle,
ConsoleGuid,
@@ -4558,134 +8421,11 @@ Index: shellenv/Connect.c
);
}
-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 @@
+diff --git a/shellenv/ConsoleProxy.c b/shellenv/ConsoleProxy.c
+index 15e6bfe..0978251 100644
+--- a/shellenv/ConsoleProxy.c
++++ b/shellenv/ConsoleProxy.c
+@@ -1483,7 +1483,7 @@ ProxyConInFlashState (
if (!EFI_ERROR (TimerStatus)) {
mConInProxy.InputState = INPUT_STATE_DEFAULT;
@@ -4694,7 +8434,7 @@ Index: shellenv/ConsoleProxy.c
mConInProxy.TwoSecondTimeOut,
TimerCancel,
0
-@@ -1496,9 +1496,11 @@
+@@ -1496,9 +1496,11 @@ ProxyConInFlashState (
(UINT64) 20000000
);
mConInProxy.InputState = INPUT_STATE_ESC;
@@ -4707,11 +8447,72 @@ Index: shellenv/ConsoleProxy.c
}
EFI_STATUS
-Index: shellenv/conio.c
-===================================================================
---- shellenv/conio.c (revision 64)
-+++ shellenv/conio.c (working copy)
-@@ -889,7 +889,7 @@
+diff --git a/shellenv/batch.c b/shellenv/batch.c
+index 24fef35..f725630 100644
+--- a/shellenv/batch.c
++++ b/shellenv/batch.c
+@@ -2388,7 +2388,6 @@ Returns:
+
+ --*/
+ {
+- BOOLEAN EndOfFile;
+ EFI_STATUS Status;
+ UINTN BufSize;
+ CHAR16 *CommandLine;
+@@ -2396,7 +2395,6 @@ Returns:
+ EFI_BATCH_STATEMENT *Stmt;
+ ENV_SHELL_INTERFACE NewShell;
+ UINTN GotoTargetStatus;
+- UINTN SkippedIfCount;
+ BOOLEAN EchoStateValid;
+ BOOLEAN EchoState;
+ EFI_STATUS ExecuteResult;
+@@ -2409,7 +2407,6 @@ Returns:
+ // Initialize
+ //
+ Status = EFI_SUCCESS;
+- EndOfFile = FALSE;
+ BufSize = 0;
+ EchoStateValid = FALSE;
+ EchoState = FALSE;
+@@ -2468,14 +2465,6 @@ Returns:
+ 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 @@ Returns:
+ LastError = ExecuteResult;
+ }
+
+- if (ExecuteResult == -1) {
++ if (ExecuteResult == (EFI_STATUS) -1) {
+ SE2->DecrementShellNestingLevel ();
+ if (SE2->IsRootShell ()) {
+ goto Done;
+@@ -2774,7 +2763,7 @@ Done:
+ Status = _ResumePreviousMode ();
+ }
+
+- if (LastError == -1) {
++ if (LastError == (UINTN) -1) {
+ return LastError;
+ } else {
+ return Status;
+diff --git a/shellenv/conio.c b/shellenv/conio.c
+index 2c963f5..8da67a1 100644
+--- a/shellenv/conio.c
++++ b/shellenv/conio.c
+@@ -889,7 +889,7 @@ Returns:
//
// If we need to update the output do so now
//
@@ -4720,76 +8521,58 @@ Index: shellenv/conio.c
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
- }
- };
+diff --git a/shellenv/dprot.c b/shellenv/dprot.c
+index 91faa50..9042b72 100644
+--- a/shellenv/dprot.c
++++ b/shellenv/dprot.c
+@@ -23,7 +23,7 @@ Revision History
-@@ -206,7 +206,7 @@
- NULL,
- 0,
- 0,
-- 0
-+ (SHELL_VAR_CHECK_FLAG_TYPE) 0
- }
- };
+ #include "shelle.h"
+ #include "shellenvguid.h"
+-#include "acpi.h"
++#include "Acpi.h"
-@@ -2038,13 +2038,13 @@
- goto Done;
- }
+ STATIC CHAR16 *SEnvDP_IlleagalStr[] = { L"Illegal" };
-- 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);
- }
+@@ -328,7 +328,6 @@ Returns:
+ 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 @@ Returns:
+ break;
- 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 @@
- }
+ case MSG_IPv6_DP:
+- IPv6DevicePath = (IPv6_DEVICE_PATH *) DevicePath;
+ PrintToken (STRING_TOKEN (STR_SHELLENV_DPROT_NOT_AVAIL), HiiEnvHandle);
+ break;
+
+@@ -1054,6 +1052,8 @@ Returns:
+ 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 @@ Returns:
+ case EfiIsaAcpiResourceInterrupt:
+ PrintToken (STRING_TOKEN (STR_SHELLENV_DPROT_INT), HiiEnvHandle);
+ break;
++ case EfiIsaAcpiResourceEndOfList:
++ return;
}
- }
-- //
-- // 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 @@
+ if (IsaIo->ResourceList->ResourceItem[Index].StartRange == IsaIo->ResourceList->ResourceItem[Index].EndRange) {
+diff --git a/shellenv/echo.c b/shellenv/echo.c
+index 52b5464..9cf3482 100644
+--- a/shellenv/echo.c
++++ b/shellenv/echo.c
+@@ -52,7 +52,7 @@ SHELL_VAR_CHECK_ITEM EchoCheckList[] = {
NULL,
0,
0,
@@ -4798,11 +8581,11 @@ Index: shellenv/pause.c
}
};
-Index: shellenv/exec.c
-===================================================================
---- shellenv/exec.c (revision 64)
-+++ shellenv/exec.c (working copy)
-@@ -105,7 +105,7 @@
+diff --git a/shellenv/exec.c b/shellenv/exec.c
+index a6c1b73..5e4ea8e 100644
+--- a/shellenv/exec.c
++++ b/shellenv/exec.c
+@@ -105,7 +105,7 @@ SHELL_VAR_CHECK_ITEM RedirCheckList[] = {
NULL,
0,
0,
@@ -4811,7 +8594,7 @@ Index: shellenv/exec.c
}
};
-@@ -126,7 +126,7 @@
+@@ -126,7 +126,7 @@ SHELL_VAR_CHECK_ITEM ExitCheckList[] = {
NULL,
0,
0,
@@ -4820,7 +8603,7 @@ Index: shellenv/exec.c
}
};
-@@ -1270,7 +1270,6 @@
+@@ -1270,7 +1270,6 @@ Returns:
SHELLENV_INTERNAL_COMMAND InternalCommand;
EFI_HANDLE NewImage;
EFI_FILE_HANDLE Script;
@@ -4828,7 +8611,7 @@ Index: shellenv/exec.c
BOOLEAN ConsoleContextSaved;
EFI_HANDLE SavedConsoleInHandle;
EFI_HANDLE SavedConsoleOutHandle;
-@@ -1292,7 +1291,6 @@
+@@ -1292,7 +1291,6 @@ Returns:
//
Status = EFI_SUCCESS;
ParentShell = NULL;
@@ -4836,7 +8619,7 @@ Index: shellenv/exec.c
ConsoleContextSaved = FALSE;
SavedConIn = NULL;
SavedConOut = NULL;
-@@ -1557,7 +1555,7 @@
+@@ -1557,7 +1555,7 @@ Returns:
);
EFI_SHELL_APP_INIT (ParentImageHandle, ParentSystemTable);
@@ -4845,7 +8628,7 @@ Index: shellenv/exec.c
//
// if status = -2 we assume that a nested shell has just exited.
//
-@@ -1613,7 +1611,9 @@
+@@ -1613,7 +1611,9 @@ Returns:
Done:
DEBUG_CODE (
if (EFI_ERROR (Status) && Output) {
@@ -4856,7 +8639,7 @@ Index: shellenv/exec.c
|| (Status == EFI_REDIRECTION_SAME)) {
} else {
PrintToken (STRING_TOKEN (STR_SHELLENV_EXEC_EXIT_STATUS_CODE), HiiEnvHandle, Status);
-@@ -1674,7 +1674,7 @@
+@@ -1674,7 +1674,7 @@ Done:
PrintToken (STRING_TOKEN (STR_SHELLENV_REDIR_NOT_ALLOWED), HiiEnvHandle);
}
@@ -4865,7 +8648,7 @@ Index: shellenv/exec.c
//
// Don't Print on a "Disconnect All" exit. The ConOut device may not exist
//
-@@ -1872,7 +1872,7 @@
+@@ -1872,7 +1872,7 @@ Returns:
return Status;
}
//
@@ -4874,7 +8657,7 @@ Index: shellenv/exec.c
//
if (PathPos != -1 && Ptr1 == NULL) {
return Status;
-@@ -2638,7 +2638,6 @@
+@@ -2638,7 +2638,6 @@ Returns:
EFI_STATUS Status;
CHAR16 *Alias;
CHAR16 *SubstituteStr;
@@ -4882,7 +8665,7 @@ Index: shellenv/exec.c
BOOLEAN Literal;
BOOLEAN Comment;
BOOLEAN IsVariable;
-@@ -2735,7 +2734,6 @@
+@@ -2735,7 +2734,6 @@ Returns:
// Try to find a shell enviroment variable
//
QuoteCount = 0;
@@ -4890,11 +8673,11 @@ Index: shellenv/exec.c
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 @@
+diff --git a/shellenv/for.c b/shellenv/for.c
+index 99664ad..93ab1f2 100644
+--- a/shellenv/for.c
++++ b/shellenv/for.c
+@@ -24,7 +24,7 @@ Revision History
#include "shelle.h"
#include "shellenvguid.h"
@@ -4903,7 +8686,7 @@ Index: shellenv/for.c
BOOLEAN
CheckInterValue (
IN CHAR16 *wszValueStr,
-@@ -190,7 +190,7 @@
+@@ -190,7 +190,7 @@ Arguments:
Returns:
EFI_SUCCESS The function finished sucessfully
@@ -4912,7 +8695,7 @@ Index: shellenv/for.c
{
EFI_BATCH_STATEMENT *Stmt;
EFI_LIST_ENTRY FileList;
-@@ -326,7 +326,8 @@
+@@ -326,7 +326,8 @@ Done:
return Status;
}
@@ -4922,24 +8705,11 @@ Index: shellenv/for.c
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 @@
+diff --git a/shellenv/help.c b/shellenv/help.c
+index b5e1673..ecb52fd 100644
+--- a/shellenv/help.c
++++ b/shellenv/help.c
+@@ -52,7 +52,7 @@ SHELL_VAR_CHECK_ITEM HelpCheckList[] = {
NULL,
0,
0,
@@ -4948,35 +8718,47 @@ Index: shellenv/var.c
}
};
-@@ -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
+diff --git a/shellenv/if.c b/shellenv/if.c
+index c6f0f51..766e6fb 100644
+--- a/shellenv/if.c
++++ b/shellenv/if.c
+@@ -59,7 +59,6 @@ Returns:
+ BOOLEAN ExistNot;
+ UINTN NotPos;
+ BOOLEAN ExistI;
+- UINTN IPos;
+ EFI_STATUS Status;
+ CHAR16 *FileName;
+ BOOLEAN FileExists;
+@@ -122,10 +121,8 @@ Returns:
//
- ListHead = NULL;
-- IsString = FALSE;
- if (CompareGuid (&Id, &SEnvEnvId) == 0) {
- ListHead = &SEnvEnv;
-- IsString = TRUE;
- }
-
- if (CompareGuid (&Id, &SEnvAliasId) == 0) {
- ListHead = &SEnvAlias;
-- IsString = TRUE;
+ if ((StriCmp (SI->Argv[1], L"/i") == 0)) {
+ ExistI = TRUE;
+- IPos = 1;
+ } else {
+ ExistI = FALSE;
+- IPos = 0;
}
- if (ListHead) {
-Index: reset/reset.c
-===================================================================
---- reset/reset.c (revision 64)
-+++ reset/reset.c (working copy)
-@@ -61,7 +61,7 @@
+ NotPos = ExistI ? 2 : 1;
+diff --git a/shellenv/init.c b/shellenv/init.c
+index dad9002..458c6eb 100644
+--- a/shellenv/init.c
++++ b/shellenv/init.c
+@@ -143,7 +143,7 @@ Returns:
+ Status = BS->HandleProtocol (
+ mOldSEnv->Handle,
+ &ShellEnvProtocol,
+- &(mOldSEnv->Interface)
++ (VOID**)&(mOldSEnv->Interface)
+ );
+ ASSERT (!EFI_ERROR (Status));
+ Status = BS->ReinstallProtocolInterface (
+diff --git a/shellenv/map.c b/shellenv/map.c
+index 3ebf2b4..a595c41 100644
+--- a/shellenv/map.c
++++ b/shellenv/map.c
+@@ -185,7 +185,7 @@ SHELL_VAR_CHECK_ITEM MapCheckList[] = {
NULL,
0,
0,
@@ -4985,585 +8767,7 @@ Index: reset/reset.c
}
};
-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
-@@ -72,7 +72,11 @@
-
- [nmake.common]
- IMAGE_ENTRY_POINT=InitializeReset
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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
-@@ -70,6 +70,11 @@
-
- [nmake.common]
- IMAGE_ENTRY_POINT=InitializeTouch
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-+
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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]
-@@ -216,17 +226,18 @@
- # we will specify some additional DEFINEs on the compile command line.
- #
- [nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeShell
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeShell
-- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
-+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL
-
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_MONOSHELL
-+
- [nmake.ebc]
- EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DEFI_MONOSHELL
- EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
--
--
--
--
-\ 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,30 +33,32 @@
- 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)
- IMAGE_ENTRY_POINT=IfConfig
-- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
-+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+@@ -206,7 +206,7 @@ SHELL_VAR_CHECK_ITEM CdCheckList[] = {
NULL,
0,
0,
@@ -5572,442 +8776,66 @@ Index: IfConfig/IfConfig.c
}
};
-@@ -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;
+@@ -2038,13 +2038,13 @@ Returns:
+ goto Done;
}
- 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;
- }
+- Status = BS->HandleProtocol (Handle, &gEfiBlockIoProtocolGuid, &BlockIo);
++ Status = BS->HandleProtocol (Handle, &gEfiBlockIoProtocolGuid, (VOID**)&BlockIo);
//
-@@ -234,27 +234,27 @@
+ // This is just for NT32, because fsntx has no block io protocol installed
+ // but fsntx has installed simple file system protocol
//
- 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 = BS->HandleProtocol (Handle, &gEfiSimpleFileSystemProtocolGuid, &BlockIo);
++ Status = BS->HandleProtocol (Handle, &gEfiSimpleFileSystemProtocolGuid, (VOID**)&BlockIo);
}
- Status = MainInputBarCleanup ();
if (EFI_ERROR (Status)) {
-- PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_INPUTBAR_CLEANUP), HiiHandle);
-+ PrintToken (STRING_TOKEN (STR_EDIT_LIBEDITOR_INPUTBAR_CLEANUP), gEditHiiHandle);
+@@ -2630,7 +2630,6 @@ Returns:
+ UINTN Index;
+ UINTN HandleNo;
+ BOOLEAN EchoStatus;
+- BOOLEAN Same;
+ CHAR16 MapStr[8];
+ EFI_LIST_ENTRY *Link;
+ EFI_LIST_ENTRY *Head;
+@@ -2729,11 +2728,6 @@ Returns:
+ }
+ }
}
+- //
+- // New code, try to make mapping list sequence unchanged if current device
+- // paths and original device paths are the same
+- //
+- Same = FALSE;
- 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
-@@ -70,11 +70,13 @@
- # we will specify some additional DEFINEs on the compile command line.
- #
- [nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeEFIEditor
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeEFIEditor
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
--
--
+ // Load handle table and handle protocol info so that we can get
+@@ -3410,4 +3404,4 @@ ClearHistoryMapping (
+ FreePool (HistoryNode->DevicePath);
+ FreePool (HistoryNode);
+ }
+-}
\ No newline at end of file
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
++}
+diff --git a/shellenv/parsecmd.h b/shellenv/parsecmd.h
+index b14fb80..494e127 100644
+--- a/shellenv/parsecmd.h
++++ b/shellenv/parsecmd.h
+@@ -103,4 +103,5 @@ DeleteHeadArg (
+ IN OUT SHELL_PARSED_ARGS *args
);
- #endif
+-#endif
+\ No newline at end of file
++#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 @@
+diff --git a/shellenv/pause.c b/shellenv/pause.c
+index ca67cd3..9088ca6 100644
+--- a/shellenv/pause.c
++++ b/shellenv/pause.c
+@@ -47,7 +47,7 @@ SHELL_VAR_CHECK_ITEM PauseCheckList[] = {
NULL,
0,
0,
@@ -6016,566 +8844,199 @@ Index: edit/main.c
}
};
-@@ -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;
+diff --git a/shellenv/protid.c b/shellenv/protid.c
+index 3edca2c..88ebb39 100644
+--- a/shellenv/protid.c
++++ b/shellenv/protid.c
+@@ -628,7 +628,7 @@ SHELL_VAR_CHECK_ITEM DHCheckList[] = {
+ NULL,
+ 0,
+ 0,
+- FALSE
++ (SHELL_VAR_CHECK_FLAG_TYPE) FALSE
}
+ };
- 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;
+@@ -1183,7 +1183,7 @@ GetDriverName (
+ *DriverName = LibDevicePathToStr (Image->FilePath);
}
- }
-
- 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;
+- LibGetDriverName (DriverBindingHandle, Language, DriverName);
++ LibGetDriverName (DriverBindingHandle, (CHAR8*)Language, DriverName);
}
-@@ -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 @@
+ return EFI_SUCCESS;
+@@ -1539,7 +1539,7 @@ Returns:
+ DevicePath = NULL;
+ BestDeviceName = NULL;
+- Status = BS->HandleProtocol (Handle, &gEfiDevicePathProtocolGuid, &DevicePath);
++ Status = BS->HandleProtocol (Handle, &gEfiDevicePathProtocolGuid, (VOID**)&DevicePath);
- #endif
-+
-Index: SmbiosView/EventLogInfo.h
-===================================================================
---- SmbiosView/EventLogInfo.h (revision 64)
-+++ SmbiosView/EventLogInfo.h (working copy)
-@@ -85,3 +85,4 @@
- );
+ Print (L"\n");
+ PrintToken (STRING_TOKEN (STR_SHELLENV_PROTID_CONTROLLER_NAME), HiiEnvHandle);
+@@ -1598,14 +1598,14 @@ Returns:
+ 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 @@ Returns:
- #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
+ Status = GetDriverName (
+ Handle,
+- Language,
++ (UINT8*)Language,
+ FALSE,
+ &DriverName
+ );
+@@ -1806,7 +1806,7 @@ Returns:
- //
-Index: SmbiosView/PrintInfo.h
-===================================================================
---- SmbiosView/PrintInfo.h (revision 64)
-+++ SmbiosView/PrintInfo.h (working copy)
-@@ -199,3 +199,4 @@
- );
+ Status = GetDriverName (
+ Handle,
+- Language,
++ (UINT8*)Language,
+ TRUE,
+ &DriverName
+ );
+@@ -1979,7 +1979,7 @@ Returns:
- #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"
+ 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 @@ Returns:
+ goto Done;
+ }
- #include STRING_DEFINES_FILE
+- 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 @@ Returns:
-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);
-@@ -110,13 +110,13 @@
-
- VOID
- LibSmbiosGetStructHead (
-- SMBIOS_STRUCTURE_POINTER *pHead
-+ SMBIOS_STRUCTURE_POINTER **pHead
- )
{
+- EFI_STATUS Status;
+-
+ DEVICEPATH_INFO *DevicePathInfo;
+
+ UINTN Index;
+@@ -2688,7 +2686,7 @@ Returns:
//
- // return SMBIOS structure table address
+ // Establish current device path info list
//
-- pHead = mSmbiosStruct;
-+ *pHead = mSmbiosStruct;
- }
-
- EFI_STATUS
-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
-@@ -70,7 +70,12 @@
-
- [nmake.common]
- IMAGE_ENTRY_POINT=InitializeSmbiosViewApplication
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- L_PROJ_FLAGS=/align:4096
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-+
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: SmbiosView/QueryTable.h
-===================================================================
---- SmbiosView/QueryTable.h (revision 64)
-+++ SmbiosView/QueryTable.h (working copy)
-@@ -437,3 +437,4 @@
+- Status = LibLocateHandle (
++ LibLocateHandle (
+ ByProtocol,
+ Protocol,
+ NULL,
+diff --git a/shellenv/shelle.h b/shellenv/shelle.h
+index 4338a21..88cebd5 100644
+--- a/shellenv/shelle.h
++++ b/shellenv/shelle.h
+@@ -2074,3 +2074,4 @@ SEnvDriverEFIVersionTok (
);
- #endif
+ #endif // _SHELLE_H_
+
-Index: SmbiosView/LibSmbiosView.h
-===================================================================
---- SmbiosView/LibSmbiosView.h (revision 64)
-+++ SmbiosView/LibSmbiosView.h (working copy)
-@@ -66,7 +66,7 @@
-
- VOID
- LibSmbiosGetStructHead (
-- SMBIOS_STRUCTURE_POINTER *pHead
-+ SMBIOS_STRUCTURE_POINTER **pHead
- );
-
- EFI_STATUS
-@@ -128,3 +128,4 @@
- );
+diff --git a/shellenv/shellenvguid.h b/shellenv/shellenvguid.h
+index 6766662..f1a1720 100644
+--- a/shellenv/shellenvguid.h
++++ b/shellenv/shellenvguid.h
+@@ -37,3 +37,4 @@ Revision History
+ extern EFI_HII_HANDLE HiiEnvHandle;
#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 @@
+diff --git a/shellenv/var.c b/shellenv/var.c
+index cd86769..ae37344 100644
+--- a/shellenv/var.c
++++ b/shellenv/var.c
+@@ -110,7 +110,7 @@ SHELL_VAR_CHECK_ITEM VarCheckList[] = {
NULL,
0,
0,
- 0
-+ (SHELL_VAR_CHECK_FLAG_TYPE)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 @@
+@@ -144,7 +144,6 @@ Returns:
+ EFI_LIST_ENTRY *ListHead;
+ VARIABLE_ID *Var;
+ EFI_STATUS Status;
+- BOOLEAN IsString;
+ UINT32 Attributes;
+ //
+@@ -175,15 +174,12 @@ Returns:
+ // See if it's a shellenv variable
+ //
+ ListHead = NULL;
+- IsString = FALSE;
+ if (CompareGuid (&Id, &SEnvEnvId) == 0) {
+ ListHead = &SEnvEnv;
+- IsString = TRUE;
+ }
- #endif
-+
-Index: SmbiosView/smbiosview.h
-===================================================================
---- SmbiosView/smbiosview.h (revision 64)
-+++ SmbiosView/smbiosview.h (working copy)
-@@ -84,3 +84,4 @@
- extern UINT8 gShowType;
+ if (CompareGuid (&Id, &SEnvAliasId) == 0) {
+ ListHead = &SEnvAlias;
+- IsString = TRUE;
+ }
- #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
-@@ -63,8 +63,15 @@
- EdkGuidLib
- EdkFrameworkGuidLib
- EfiGuidLib
-+
- [nmake.common]
- IMAGE_ENTRY_POINT=GuidMain
-- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
-+ C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-+
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-+
-\ No newline at end of file
-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 @@
+ if (ListHead) {
+diff --git a/stall/stall.c b/stall/stall.c
+index ccf7451..b05c3a9 100644
+--- a/stall/stall.c
++++ b/stall/stall.c
+@@ -50,7 +50,7 @@ SHELL_VAR_CHECK_ITEM StallCheckList[] = {
NULL,
0,
0,
- 0
-+ (SHELL_VAR_CHECK_FLAG_TYPE)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 @@
+diff --git a/stall/stall.h b/stall/stall.h
+index a326e41..22e2fc1 100644
+--- a/stall/stall.h
++++ b/stall/stall.h
+@@ -30,3 +30,4 @@ Revision History
}
#endif
+
-Index: LoadPciRom/LoadPciRom.inf
-===================================================================
---- LoadPciRom/LoadPciRom.inf (revision 64)
-+++ LoadPciRom/LoadPciRom.inf (working copy)
-@@ -41,23 +41,23 @@
+diff --git a/stall/stall.inf b/stall/stall.inf
+index 58545a5..5b08420 100644
+--- a/stall/stall.inf
++++ b/stall/stall.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
+
[sources.common]
- LoadPciRomStrings.uni
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- LoadPciRom.c
- LoadPciRom.h
-
+ stallStrings.uni
+ stall.c
+ stall.h
+
[includes.common]
.
- ..\Inc
@@ -6603,10 +9064,10 @@ Index: LoadPciRom/LoadPciRom.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeLoadPciRom
+ IMAGE_ENTRY_POINT=InitializeStall
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -6615,29 +9076,11 @@ Index: LoadPciRom/LoadPciRom.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/time/time.c b/time/time.c
+index 00dd586..6309963 100644
+--- a/time/time.c
++++ b/time/time.c
+@@ -49,7 +49,7 @@ SHELL_VAR_CHECK_ITEM TimeCheckList[] = {
NULL,
0,
0,
@@ -6646,50 +9089,50 @@ Index: LoadPciRom/LoadPciRom.c
}
};
-@@ -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
+@@ -64,8 +64,8 @@ STATIC
+ 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 @@ STATIC
+ BOOLEAN
+ GetNumber (
+ IN CHAR16 *Str,
+- IN OUT INTN *Offset,
+- IN OUT INTN *Number,
++ IN OUT UINTN *Offset,
++ IN OUT UINTN *Number,
+ IN BOOLEAN GetSecond
+ )
+ {
+diff --git a/time/time.h b/time/time.h
+index e9ff6c9..c273c4f 100644
+--- a/time/time.h
++++ b/time/time.h
+@@ -32,3 +32,4 @@ Revision History
+ }
+
#endif
+
-Index: ver/Ver.inf
-===================================================================
---- ver/Ver.inf (revision 64)
-+++ ver/Ver.inf (working copy)
-@@ -40,33 +40,33 @@
+diff --git a/time/time.inf b/time/time.inf
+index 5181280..ab71d0e 100644
+--- a/time/time.inf
++++ b/time/time.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
[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
+ TimeStrings.uni
+ Time.c
+ Time.h
[includes.common]
.
@@ -6718,262 +9161,55 @@ Index: ver/Ver.inf
[libraries.common]
EfiShellLib
-@@ -82,7 +82,11 @@
-
- [nmake.common]
- IMAGE_ENTRY_POINT=InitializeVer
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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
-@@ -61,11 +61,14 @@
- # we will specify some additional DEFINEs on the compile command line.
- #
- [nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeDumpStore
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeDumpStore
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
--
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-
-\ No newline at end of file
-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
-@@ -61,11 +61,16 @@
- # we will specify some additional DEFINEs on the compile command line.
- #
[nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeComp
+ IMAGE_ENTRY_POINT=InitializeTime
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeComp
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-
-+
-
-\ No newline at end of file
-Index: IpConfig/IpConfig.c
-===================================================================
---- IpConfig/IpConfig.c (revision 64)
-+++ IpConfig/IpConfig.c (working copy)
-@@ -39,7 +39,7 @@
+diff --git a/touch/touch.c b/touch/touch.c
+index 0938d34..a5f61b8 100644
+--- a/touch/touch.c
++++ b/touch/touch.c
+@@ -64,7 +64,7 @@ TouchFreeFileArg (
//
// Global Variables
//
-EFI_HII_HANDLE HiiHandle;
+STATIC EFI_HII_HANDLE HiiHandle;
- EFI_GUID EfiIpConfigGuid = EFI_IPCONFIG_GUID;
- SHELL_VAR_CHECK_ITEM IpconfigCheckList[] = {
+ EFI_GUID EfiTouchGuid = EFI_TOUCH_GUID;
+ SHELL_VAR_CHECK_ITEM TouchCheckList[] = {
{
-@@ -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 \
+diff --git a/touch/touch.h b/touch/touch.h
+index 402e7dc..6aceaf5 100644
+--- a/touch/touch.h
++++ b/touch/touch.h
+@@ -29,4 +29,4 @@ Revision History
+ 0xa16a4695, 0x5815, 0x4d4f, 0xb8, 0xe, 0x6a, 0xf, 0x88, 0xac, 0xdb, 0x6c \
}
-#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 @@
+diff --git a/touch/touch.inf b/touch/touch.inf
+index 5382ff6..8d67f41 100644
+--- a/touch/touch.inf
++++ b/touch/touch.inf
+@@ -39,23 +39,23 @@ FILE_GUID = 2EBB94E8-3792-47bb-8843-4D5ED5B98F28
COMPONENT_TYPE = APPLICATION
[sources.common]
- ..\ShCommonStrings.uni
+ ../ShCommonStrings.uni
- IpConfigStrings.uni
- IpConfig.c
- IpConfig.h
-
+ TouchStrings.uni
+ touch.c
+
[includes.common]
.
- ..\Inc
@@ -7001,34 +9237,32 @@ Index: IpConfig/IpConfig.inf
[libraries.common]
EfiShellLib
-@@ -56,9 +56,12 @@
-
+@@ -70,6 +70,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
-- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
- IMAGE_ENTRY_POINT=InitializeIpConfig
+ IMAGE_ENTRY_POINT=InitializeTouch
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
++
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: sermode/sermode.c
-===================================================================
---- sermode/sermode.c (revision 64)
-+++ sermode/sermode.c (working copy)
-@@ -35,7 +35,7 @@
-
- #include EFI_PROTOCOL_DEFINITION (SerialIo)
+diff --git a/type/type.c b/type/type.c
+index 129f911..a4cf59d 100644
+--- a/type/type.c
++++ b/type/type.c
+@@ -59,7 +59,7 @@ BOOLEAN TypeAscii;
+ BOOLEAN TypeUnicode;
+ BOOLEAN TypeAuto;
-EFI_HII_HANDLE HiiHandle;
+STATIC EFI_HII_HANDLE HiiHandle;
- EFI_GUID EfiSermodeGuid = EFI_SERMODEB_GUID;
- SHELL_VAR_CHECK_ITEM SermodeCheckList[] = {
+ EFI_GUID EfiTypeGuid = EFI_TYPE_GUID;
+ SHELL_VAR_CHECK_ITEM TypeCheckList[] = {
{
-@@ -54,7 +54,7 @@
+@@ -90,7 +90,7 @@ SHELL_VAR_CHECK_ITEM TypeCheckList[] = {
NULL,
0,
0,
@@ -7037,47 +9271,29 @@ Index: sermode/sermode.c
}
};
-@@ -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 @@
+diff --git a/type/type.h b/type/type.h
+index b3c170c..f22e566 100644
+--- a/type/type.h
++++ b/type/type.h
+@@ -30,3 +30,4 @@ Revision History
}
#endif
+
-Index: sermode/sermode.inf
-===================================================================
---- sermode/sermode.inf (revision 64)
-+++ sermode/sermode.inf (working copy)
-@@ -40,24 +40,24 @@
+diff --git a/type/type.inf b/type/type.inf
+index efb0a82..0a8e7eb 100644
+--- a/type/type.inf
++++ b/type/type.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
[sources.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- SermodeStrings.uni
- sermode.c
- sermode.h
-
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ TypeStrings.uni
+ type.c
+ type.h
+
[includes.common]
.
- ..\Inc
@@ -7105,10 +9321,10 @@ Index: sermode/sermode.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=InitializeSerialMode
+ IMAGE_ENTRY_POINT=InitializeType
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -7117,40 +9333,11 @@ Index: sermode/sermode.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/tzone/timezone.inf b/tzone/timezone.inf
+index 57834c6..f0e8c1d 100644
+--- a/tzone/timezone.inf
++++ b/tzone/timezone.inf
+@@ -25,24 +25,24 @@ FILE_GUID = E27B12B9-2647-4af3-ADBC-B5AB5FB50421
COMPONENT_TYPE = APPLICATION
[sources.common]
@@ -7187,15 +9374,15 @@ Index: tzone/timezone.inf
[libraries.common]
EfiShellLib
-@@ -62,11 +62,13 @@
+@@ -62,11 +62,13 @@ COMPONENT_TYPE = APPLICATION
# we will specify some additional DEFINEs on the compile command line.
#
[nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeTZone
+- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
+ IMAGE_ENTRY_POINT=InitializeTZone
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeTZone
++ C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
@@ -7205,29 +9392,11 @@ Index: tzone/timezone.inf
\ No newline at end of file
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/tzone/tzone.c b/tzone/tzone.c
+index 30cc513..2b6ccdd 100644
+--- a/tzone/tzone.c
++++ b/tzone/tzone.c
+@@ -65,7 +65,7 @@ SHELL_VAR_CHECK_ITEM TzoneCheckList[] = {
NULL,
0,
0,
@@ -7236,73 +9405,36 @@ Index: vol/vol.c
}
};
-Index: vol/vol.h
-===================================================================
---- vol/vol.h (revision 64)
-+++ vol/vol.h (working copy)
-@@ -32,3 +32,4 @@
+@@ -258,7 +258,6 @@ InitializeTZone (
+ BOOLEAN bList;
+ BOOLEAN bSet;
+ INT16 nValue;
+- UINTN uValueSize;
+ SHELL_VAR_CHECK_CODE RetCode;
+ CHAR16 *Useful;
+ SHELL_VAR_CHECK_PACKAGE ChkPck;
+@@ -269,7 +268,6 @@ InitializeTZone (
+ bList = FALSE;
+ bSet = FALSE;
+ nValue = 0;
+- uValueSize = sizeof (INTN);
+ ZeroMem (&ChkPck, sizeof (SHELL_VAR_CHECK_PACKAGE));
+ ZeroMem (&Time, sizeof (EFI_TIME));
+ //
+diff --git a/tzone/tzone.h b/tzone/tzone.h
+index 08e049f..1cc0c2b 100644
+--- a/tzone/tzone.h
++++ b/tzone/tzone.h
+@@ -35,3 +35,4 @@ Revision History
}
#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
-@@ -72,7 +72,11 @@
-
- [nmake.common]
- IMAGE_ENTRY_POINT=InitializeVol
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: cp/cp.c
-===================================================================
---- cp/cp.c (revision 64)
-+++ cp/cp.c (working copy)
-@@ -66,7 +66,7 @@
+diff --git a/unload/unload.c b/unload/unload.c
+index 100f16b..5aee387 100644
+--- a/unload/unload.c
++++ b/unload/unload.c
+@@ -66,7 +66,7 @@ SHELL_VAR_CHECK_ITEM UnloadCheckList[] = {
NULL,
0,
0,
@@ -7311,1611 +9443,99 @@ Index: cp/cp.c
}
};
-@@ -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
-@@ -72,7 +72,12 @@
-
- [nmake.common]
- IMAGE_ENTRY_POINT=InitializeCP
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-+
-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/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;
+@@ -110,7 +110,7 @@ _UnloadGetDriverName (
+ *DriverName = LibDevicePathToStr (Image->FilePath);
}
-@@ -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;
+ } else {
+- LibGetDriverName(DriverBindingHandle, Language, DriverName);
++ LibGetDriverName(DriverBindingHandle, (CHAR8*)Language, DriverName);
}
-- ControllerHandleIndexValid = FALSE;
- if (ControllerHandleIndex != NULL) {
- *ControllerHandleIndex = 0xffffffff;
- }
-@@ -847,7 +843,6 @@
+ return EFI_SUCCESS;
+@@ -184,7 +184,7 @@ Returns:
- if (ControllerHandle != NULL && ControllerHandleIndex != NULL && (*HandleBuffer)[HandleIndex] == ControllerHandle) {
- *ControllerHandleIndex = (UINT32) HandleIndex;
-- ControllerHandleIndexValid = TRUE;
- }
+ DevicePath = NULL;
+ BestDeviceName = NULL;
+- Status = BS->HandleProtocol (Handle, &gEfiDevicePathProtocolGuid, &DevicePath);
++ Status = BS->HandleProtocol (Handle, &gEfiDevicePathProtocolGuid, (VOID**)&DevicePath);
- }
-@@ -1305,7 +1300,7 @@
- Status = BS->HandleProtocol (
- Handles[Index],
- ProtocolGuid,
-- Interface
-+ (VOID**)Interface
+ Print (L"\n");
+ PrintToken (STRING_TOKEN (STR_UNLOAD_CONTROLLER_NAME), HiiUnloadHandle);
+@@ -242,14 +242,14 @@ Returns:
+ Image = FALSE;
+ Status = _UnloadGetDriverName (
+ DriverBindingHandleBuffer[Index],
+- Language,
++ (UINT8*)Language,
+ FALSE,
+ &DriverName
);
-
- 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 (DriverName == NULL) {
+ Status = _UnloadGetDriverName (
+ DriverBindingHandleBuffer[Index],
+- Language,
++ (UINT8*)Language,
+ TRUE,
+ &DriverName
);
- 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 @@
-
- --*/
+@@ -436,7 +436,7 @@ Returns:
--#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/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 @@
-
- --*/
+ Status = _UnloadGetDriverName (
+ Handle,
+- Language,
++ (UINT8*)Language,
+ FALSE,
+ &DriverName
+ );
+@@ -450,7 +450,7 @@ Returns:
--#include "EfiShelllib.h"
-+#include "EfiShellLib.h"
+ Status = _UnloadGetDriverName (
+ Handle,
+- Language,
++ (UINT8*)Language,
+ TRUE,
+ &DriverName
+ );
+@@ -628,7 +628,7 @@ Returns:
- EFI_GUID mEfiDevicePathMessagingUartFlowControlGuid = DEVICE_PATH_MESSAGING_UART_FLOW_CONTROL;
+ 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 @@ Returns:
+ goto Done;
+ }
-@@ -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
- );
- }
+- 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);
+ }
+diff --git a/unload/unload.h b/unload/unload.h
+index d6da802..4c99c85 100644
+--- a/unload/unload.h
++++ b/unload/unload.h
+@@ -36,3 +36,4 @@ Revision History
}
-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,7 @@
- EfiGuidLib
- EdkGuidLib
-
-+[libraries.ARM]
-+ CompilerIntrinsicsLib, 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
+diff --git a/unload/unload.inf b/unload/unload.inf
+index e91869e..fbc0fb3 100644
+--- a/unload/unload.inf
++++ b/unload/unload.inf
+@@ -39,23 +39,23 @@ FILE_GUID = 409060F4-3E7B-44cc-9DFD-A8E807474888
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]
-@@ -341,16 +351,18 @@
- # we will specify some additional DEFINEs on the compile command line.
- #
- [nmake.common]
-+ IMAGE_ENTRY_POINT=InitializeShell
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_PROJ_FLAGS = $(C_PROJ_FLAGS) /Zm500
-- IMAGE_ENTRY_POINT=InitializeShell
-- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL /DEFI_FULLSHELL
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
-+ C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_MONOSHELL /DEFI_FULLSHELL
-
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_MONOSHELL -DEFI_FULLSHELL
-+
- [nmake.ebc]
- EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DEFI_MONOSHELL /DEFI_FULLSHELL
- EBC_C_STD_FLAGS = $(EBC_C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- 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
-
+ UnloadStrings.uni
+ unload.c
+
[includes.common]
.
- ..\Inc
@@ -8943,202 +9563,58 @@ Index: mm/mm.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -70,6 +70,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=DumpIoModify
+ IMAGE_ENTRY_POINT=InitializeUnload
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
++
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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
- )
- /*++
+diff --git a/ver/Ebc/verEbc.c b/ver/Ebc/verEbc.c
+index 1d7368d..9518e14 100644
+--- a/ver/Ebc/verEbc.c
++++ b/ver/Ebc/verEbc.c
+@@ -45,7 +45,7 @@ DisplayExtendedVersionInfo (
+ Status = BS->LocateProtocol (
+ &gEfiEbcProtocolGuid,
+ NULL,
+- &Ebc
++ (VOID**)&Ebc
+ );
+ if (EFI_ERROR (Status)) {
+ return ;
+diff --git a/ver/Ver.inf b/ver/Ver.inf
+index 56a135d..12ec23e 100644
+--- a/ver/Ver.inf
++++ b/ver/Ver.inf
+@@ -40,33 +40,33 @@ COMPONENT_TYPE = APPLICATION
-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
+ 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.common]
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- DrvcfgStrings.uni
- drvcfg.c
- drvcfg.h
-
+ [sources.ebc]
+- ebc\verEbc.c
++ eb./verEbc.c
+
[includes.common]
.
- ..\Inc
@@ -9166,10 +9642,10 @@ Index: drvcfg/drvcfg.inf
[libraries.common]
EfiShellLib
-@@ -72,7 +72,11 @@
+@@ -82,7 +82,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=DrvcfgMain
+ IMAGE_ENTRY_POINT=InitializeVer
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -9178,20 +9654,11 @@ Index: drvcfg/drvcfg.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-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 @@
+diff --git a/ver/ver.c b/ver/ver.c
+index 76d50ca..56b95d4 100644
+--- a/ver/ver.c
++++ b/ver/ver.c
+@@ -57,7 +57,7 @@ SHELL_VAR_CHECK_ITEM VerCheckList[] = {
NULL,
0,
0,
@@ -9200,29 +9667,29 @@ Index: drvcfg/drvcfg.c
}
};
-Index: openinfo/openinfo.h
-===================================================================
---- openinfo/openinfo.h (revision 64)
-+++ openinfo/openinfo.h (working copy)
-@@ -33,3 +33,4 @@
- }
-
+diff --git a/ver/ver.h b/ver/ver.h
+index 770e82f..c6adc30 100644
+--- a/ver/ver.h
++++ b/ver/ver.h
+@@ -37,3 +37,4 @@ DisplayExtendedVersionInfo (
+ IN EFI_SYSTEM_TABLE *SystemTable
+ );
#endif
+
-Index: openinfo/openinfo.inf
-===================================================================
---- openinfo/openinfo.inf (revision 64)
-+++ openinfo/openinfo.inf (working copy)
-@@ -41,24 +41,24 @@
+diff --git a/vol/Vol.inf b/vol/Vol.inf
+index 71d2cb5..cef8462 100644
+--- a/vol/Vol.inf
++++ b/vol/Vol.inf
+@@ -40,24 +40,24 @@ COMPONENT_TYPE = APPLICATION
- [sources.common]
- OPeninfoStrings.uni
-- ..\ShCommonStrings.uni
-+ ../ShCommonStrings.uni
- openinfo.c
- openinfo.h
-
+ [sources.common]
+- ..\ShCommonStrings.uni
++ ../ShCommonStrings.uni
+ VolStrings.uni
+ Vol.c
+ Vol.h
+
[includes.common]
.
- ..\Inc
@@ -9250,10 +9717,10 @@ Index: openinfo/openinfo.inf
[libraries.common]
EfiShellLib
-@@ -73,7 +73,11 @@
+@@ -72,7 +72,11 @@ COMPONENT_TYPE = APPLICATION
[nmake.common]
- IMAGE_ENTRY_POINT=OpeninfoMain
+ IMAGE_ENTRY_POINT=InitializeVol
+
+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -9262,42 +9729,20 @@ Index: openinfo/openinfo.inf
+[nmake.ARM, nmake.AARCH64]
+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
-Index: openinfo/openinfo.c
-===================================================================
---- openinfo/openinfo.c (revision 64)
-+++ openinfo/openinfo.c (working copy)
-@@ -36,7 +36,7 @@
- //
- // Global Variables
+diff --git a/vol/vol.c b/vol/vol.c
+index 47a4de0..e86b298 100644
+--- a/vol/vol.c
++++ b/vol/vol.c
+@@ -32,7 +32,7 @@ extern UINT8 STRING_ARRAY_NAME[];
//
--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
- }
- };
+ #include STRING_DEFINES_FILE
-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[] = {
+ EFI_GUID EfiVolGuid = EFI_VOL_GUID;
+ SHELL_VAR_CHECK_ITEM VolCheckList[] = {
{
-@@ -68,7 +68,7 @@
+@@ -63,7 +63,7 @@ SHELL_VAR_CHECK_ITEM VolCheckList[] = {
NULL,
0,
0,
@@ -9306,82 +9751,15 @@ Index: drivers/drivers.c
}
};
-@@ -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 @@
+diff --git a/vol/vol.h b/vol/vol.h
+index 0d345dd..a9fe6d7 100644
+--- a/vol/vol.h
++++ b/vol/vol.h
+@@ -32,3 +32,4 @@ Revision History
}
#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
-@@ -73,7 +73,11 @@
-
- [nmake.common]
- IMAGE_ENTRY_POINT=DriversMain
-+
-+[nmake.IA32, nmake.EBC, nmake.X64, nmake.IPF]
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
- C_STD_FLAGS = $(C_STD_FLAGS) /DSTRING_DEFINES_FILE=\"$(BASE_NAME)StrDefs.h\"
- C_STD_FLAGS = $(C_STD_FLAGS) /DEFI_BOOTSHELL
-
-+[nmake.ARM, nmake.AARCH64]
-+ C_STD_FLAGS = $(C_STD_FLAGS) -DEFI_BOOTSHELL
+--
+1.8.5
+