diff --git a/.vs/msvc/gnu-efi.vcxproj b/.vs/msvc/gnu-efi.vcxproj
new file mode 100644
index 0000000..007b78d
--- /dev/null
+++ b/.vs/msvc/gnu-efi.vcxproj
@@ -0,0 +1,428 @@
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ ARM64
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ ARM64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {3135D563-9596-4584-9ED6-616ADEC52974}
+ gnuefi
+ 10.0.17763.0
+
+
+
+ x64
+
+
+ StaticLibrary
+ true
+ v141
+ Unicode
+
+
+ StaticLibrary
+ true
+ v141
+ Unicode
+
+
+ StaticLibrary
+ true
+ v141
+ Unicode
+ true
+
+
+ StaticLibrary
+ true
+ v141
+ Unicode
+ true
+
+
+ StaticLibrary
+ false
+ v141
+ true
+ Unicode
+
+
+ StaticLibrary
+ false
+ v141
+ true
+ Unicode
+
+
+ StaticLibrary
+ false
+ v141
+ true
+ Unicode
+ true
+
+
+ StaticLibrary
+ false
+ v141
+ true
+ Unicode
+ true
+
+
+
+ $(SolutionDir)x64\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ $(SolutionDir)ia32\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ $(SolutionDir)arm\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ $(SolutionDir)aa64\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ $(SolutionDir)x64\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ $(SolutionDir)ia32\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ $(SolutionDir)arm\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ $(SolutionDir)aa64\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+
+ Level3
+ Disabled
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\x86_64;$(SolutionDir)\gnu-efi\inc\protocol;$(SolutionDir)\gnu-efi\lib
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ MultiThreadedDebug
+ 4312
+ ProgramDatabase
+ Default
+ false
+ /Oi-
+
+
+ true
+
+
+ EFI Application
+ true
+
+
+
+
+ Level3
+ Disabled
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\ia32;$(SolutionDir)\gnu-efi\inc\protocol;$(SolutionDir)\gnu-efi\lib
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ MultiThreadedDebug
+ ProgramDatabase
+ 4312
+ Default
+ false
+ /Oi-
+
+
+ true
+
+
+ EFI Application
+ true
+
+
+
+
+ Level3
+ Disabled
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\arm;$(SolutionDir)\gnu-efi\inc\protocol;$(SolutionDir)\gnu-efi\lib
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ MultiThreadedDebug
+ ProgramDatabase
+ 4312
+ Default
+ false
+ /Oi-
+
+
+ true
+
+
+ EFI Application
+ true
+
+
+
+
+ Level3
+ Disabled
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\aarch64;$(SolutionDir)\gnu-efi\inc\protocol;$(SolutionDir)\gnu-efi\lib
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;__SIZE_TYPE__=uint64_t;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ MultiThreadedDebug
+ ProgramDatabase
+ 4312
+ Default
+ false
+ /Oi-
+
+
+ true
+
+
+ EFI Application
+ true
+
+
+
+
+ Level3
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\x86_64;$(SolutionDir)\gnu-efi\inc\protocol;$(SolutionDir)\gnu-efi\lib
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ MultiThreaded
+ 4312
+ false
+ false
+ /Oi-
+
+
+ true
+ true
+ true
+
+
+ EFI Application
+ true
+
+
+
+
+ Level3
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\ia32;$(SolutionDir)\gnu-efi\inc\protocol;$(SolutionDir)\gnu-efi\lib
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ MultiThreaded
+ 4312
+ false
+ false
+ /Oi-
+
+
+ true
+ true
+ true
+
+
+ EFI Application
+ true
+
+
+
+
+ Level3
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\arm;$(SolutionDir)\gnu-efi\inc\protocol;$(SolutionDir)\gnu-efi\lib
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ MultiThreaded
+ 4312
+ false
+ false
+ /Oi-
+
+
+ true
+ true
+ true
+
+
+ EFI Application
+ true
+
+
+
+
+ Level3
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\aarch64;$(SolutionDir)\gnu-efi\inc\protocol;$(SolutionDir)\gnu-efi\lib
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;__SIZE_TYPE__=uint64_t;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ MultiThreaded
+ 4312
+ false
+ false
+ /Oi-
+
+
+ true
+ true
+ true
+
+
+ EFI Application
+ true
+
+
+
+
+ true
+ true
+ false
+ false
+ true
+ true
+ true
+ true
+
+
+ true
+ true
+ false
+ false
+ true
+ true
+ true
+ true
+
+
+ false
+ false
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+ false
+ false
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ true
+ true
+ true
+ false
+ false
+ true
+ true
+
+
+ true
+ true
+ true
+ true
+ false
+ false
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ true
+ true
+ true
+ true
+ true
+ false
+ false
+
+
+ true
+ true
+ true
+ true
+ true
+ true
+ false
+ false
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.vs/msvc/gnu-efi.vcxproj.filters b/.vs/msvc/gnu-efi.vcxproj.filters
new file mode 100644
index 0000000..865e8e2
--- /dev/null
+++ b/.vs/msvc/gnu-efi.vcxproj.filters
@@ -0,0 +1,123 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;hm;inl;inc;xsd
+
+
+ {20c8e9bd-0fa8-46d3-b825-e3eebd64ab3d}
+
+
+ {87122940-e80f-416d-a840-5e32f703f3ff}
+
+
+ {e6e3d25a-4fce-4036-bef9-3cfbafc4baaf}
+
+
+ {cf7e7031-77e5-4827-9aa6-f996fc4b3d06}
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files\arm
+
+
+ Source Files\x86_64
+
+
+ Source Files\ia32
+
+
+ Source Files\x86_64
+
+
+ Source Files\ia32
+
+
+ Source Files\arm
+
+
+ Source Files\aarch64
+
+
+ Source Files\aarch64
+
+
+
\ No newline at end of file
diff --git a/.vs/msvc/gnu-efi.vcxproj.user b/.vs/msvc/gnu-efi.vcxproj.user
new file mode 100644
index 0000000..ef5ff2a
--- /dev/null
+++ b/.vs/msvc/gnu-efi.vcxproj.user
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/.vs/msvc/uefi-simple.vcxproj b/.vs/msvc/uefi-simple.vcxproj
new file mode 100644
index 0000000..dc78731
--- /dev/null
+++ b/.vs/msvc/uefi-simple.vcxproj
@@ -0,0 +1,397 @@
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ ARM64
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ ARM64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {DFA0BA98-D0BA-4176-9A34-B5BA6355B1DE}
+ uefi-simple
+ 10.0.17763.0
+
+
+
+ x64
+
+
+ Application
+ true
+ v141
+ Unicode
+
+
+ Application
+ true
+ v141
+ Unicode
+
+
+ Application
+ true
+ v141
+ Unicode
+ true
+
+
+ Application
+ true
+ v141
+ Unicode
+ true
+
+
+ Application
+ false
+ v141
+ Unicode
+
+
+ Application
+ false
+ v141
+ Unicode
+
+
+ Application
+ false
+ v141
+ Unicode
+ true
+
+
+ Application
+ false
+ v141
+ Unicode
+ true
+
+
+
+ .efi
+ false
+ false
+ $(SolutionDir)x64\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ .efi
+ false
+ false
+ $(SolutionDir)ia32\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ .efi
+ false
+ false
+ $(SolutionDir)arm\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ .efi
+ false
+ false
+ $(SolutionDir)aa64\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ .efi
+ false
+ false
+ $(SolutionDir)x64\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ .efi
+ false
+ false
+ $(SolutionDir)ia32\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ .efi
+ false
+ false
+ $(SolutionDir)arm\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+ .efi
+ false
+ false
+ $(SolutionDir)aa64\$(Configuration)\
+ $(OutDir)$(ProjectName)\
+
+
+
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\x86_64
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ Level3
+ 4091
+ ProgramDatabase
+ Default
+ false
+ /Oi- %(AdditionalOptions)
+
+
+ EFI Application
+
+
+ true
+
+
+ gnu-efi.lib;libcmtd.lib;%(AdditionalDependencies)
+ false
+ true
+ efi_main
+ EFI Application
+ $(OutDir);%(AdditionalLibraryDirectories)
+ true
+
+
+
+
+
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\ia32
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ Level3
+ ProgramDatabase
+ 4091
+ Default
+ false
+ /Oi- %(AdditionalOptions)
+
+
+ EFI Application
+
+
+ true
+
+
+ gnu-efi.lib;libcmtd.lib;%(AdditionalDependencies)
+ false
+ true
+ efi_main
+ EFI Application
+ $(OutDir);%(AdditionalLibraryDirectories)
+ true
+ MachineX86
+
+
+
+
+
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\arm
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ Level3
+ ProgramDatabase
+ 4091
+ Default
+ false
+ /Oi- %(AdditionalOptions)
+
+
+ EFI Application
+
+
+ true
+
+
+ gnu-efi.lib;libcmtd.lib;%(AdditionalDependencies)
+ false
+ true
+ efi_main
+ EFI Application
+ $(OutDir);%(AdditionalLibraryDirectories)
+ true
+
+
+
+
+
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\aarch64
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ Level3
+ ProgramDatabase
+ 4091
+ Default
+ false
+ /Oi- %(AdditionalOptions)
+
+
+ EFI Application
+
+
+ true
+
+
+ gnu-efi.lib;libcmtd.lib;%(AdditionalDependencies)
+ false
+ true
+ efi_main
+ EFI Application
+ $(OutDir);%(AdditionalLibraryDirectories)
+ true
+
+
+
+
+
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\x86_64
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ Level3
+ 4091
+ false
+ /Oi- %(AdditionalOptions)
+
+
+ EFI Application
+
+
+ true
+
+
+ false
+ true
+ efi_main
+ EFI Application
+ gnu-efi.lib;libcmt.lib;%(AdditionalDependencies)
+ $(OutDir);%(AdditionalLibraryDirectories)
+ true
+
+
+
+
+
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\ia32
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ Level3
+ 4091
+ false
+ /Oi- %(AdditionalOptions)
+
+
+ EFI Application
+
+
+ true
+
+
+ false
+ true
+ efi_main
+ EFI Application
+ gnu-efi.lib;libcmt.lib;%(AdditionalDependencies)
+ $(OutDir);%(AdditionalLibraryDirectories)
+ true
+
+
+
+
+
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\arm
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ Level3
+ 4091
+ false
+ /Oi- %(AdditionalOptions)
+
+
+ EFI Application
+
+
+ true
+
+
+ false
+ true
+ efi_main
+ EFI Application
+ gnu-efi.lib;libcmt.lib;%(AdditionalDependencies)
+ $(OutDir);%(AdditionalLibraryDirectories)
+ true
+
+
+
+
+
+ $(SolutionDir)\gnu-efi\inc;$(SolutionDir)\gnu-efi\inc\aarch64
+ _UNICODE;UNICODE;HAVE_USE_MS_ABI;GNU_EFI_USE_EXTERNAL_STDARG;%(PreprocessorDefinitions)
+ false
+ CompileAsC
+ Level3
+ 4091
+ false
+ /Oi- %(AdditionalOptions)
+
+
+ EFI Application
+
+
+ true
+
+
+ false
+ true
+ efi_main
+ EFI Application
+ gnu-efi.lib;libcmt.lib;%(AdditionalDependencies)
+ $(OutDir);%(AdditionalLibraryDirectories)
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.vs/msvc/uefi-simple.vcxproj.filters b/.vs/msvc/uefi-simple.vcxproj.filters
new file mode 100644
index 0000000..409073d
--- /dev/null
+++ b/.vs/msvc/uefi-simple.vcxproj.filters
@@ -0,0 +1,26 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;hm;inl;inc;xsd
+
+
+ {b1c3b304-e868-4b07-988c-36ad7bc57300}
+
+
+
+
+ Resource Files
+
+
+
+
+ Source Files
+
+
+
\ No newline at end of file
diff --git a/.vs/msvc/uefi-simple.vcxproj.user b/.vs/msvc/uefi-simple.vcxproj.user
new file mode 100644
index 0000000..fcdb619
--- /dev/null
+++ b/.vs/msvc/uefi-simple.vcxproj.user
@@ -0,0 +1,51 @@
+
+
+
+ $(SystemRoot)\System32\wscript
+ //d debug.vbs "$(TargetPath)" "$(PlatformShortName)"
+ WindowsLocalDebugger
+ $(SolutionDir)
+
+
+ $(SystemRoot)\System32\wscript
+ //d debug.vbs "$(TargetPath)" "$(PlatformShortName)"
+ WindowsLocalDebugger
+ $(SolutionDir)
+
+
+ $(SystemRoot)\System32\wscript
+ //d debug.vbs "$(TargetPath)" "$(PlatformShortName)"
+ WindowsLocalDebugger
+ $(SolutionDir)
+
+
+ $(SystemRoot)\System32\wscript
+ //d debug.vbs "$(TargetPath)" "$(PlatformShortName)"
+ WindowsLocalDebugger
+ $(SolutionDir)
+
+
+ $(SystemRoot)\System32\wscript
+ //d debug.vbs "$(TargetPath)" "$(PlatformShortName)"
+ WindowsLocalDebugger
+ $(SolutionDir)
+
+
+ $(SystemRoot)\System32\wscript
+ //d debug.vbs "$(TargetPath)" "$(PlatformShortName)"
+ WindowsLocalDebugger
+ $(SolutionDir)
+
+
+ $(SystemRoot)\System32\wscript
+ //d debug.vbs "$(TargetPath)" "$(PlatformShortName)"
+ WindowsLocalDebugger
+ $(SolutionDir)
+
+
+ $(SystemRoot)\System32\wscript
+ //d debug.vbs "$(TargetPath)" "$(PlatformShortName)"
+ WindowsLocalDebugger
+ $(SolutionDir)
+
+
\ No newline at end of file
diff --git a/.vs/uefi-simple/v15/ipch/AutoPCH/87c6e8ee158dd2c4/MAIN.ipch b/.vs/uefi-simple/v15/ipch/AutoPCH/87c6e8ee158dd2c4/MAIN.ipch
new file mode 100644
index 0000000..ceed3db
Binary files /dev/null and b/.vs/uefi-simple/v15/ipch/AutoPCH/87c6e8ee158dd2c4/MAIN.ipch differ
diff --git a/.vs/uefi-simple/v15/ipch/AutoPCH/96875102a9e1e354/MAIN.ipch b/.vs/uefi-simple/v15/ipch/AutoPCH/96875102a9e1e354/MAIN.ipch
new file mode 100644
index 0000000..0bc6c00
Binary files /dev/null and b/.vs/uefi-simple/v15/ipch/AutoPCH/96875102a9e1e354/MAIN.ipch differ
diff --git a/main.c b/main.c
index 5166bab..4890a9c 100644
--- a/main.c
+++ b/main.c
@@ -1,10 +1,19 @@
#include
#include
+EFI_SYSTEM_TABLE *gST;
+EFI_BOOT_SERVICES *gBS;
+EFI_RUNTIME_SERVICES *gRT;
+
// Application entrypoint (must be set to 'efi_main' for gnu-efi crt0 compatibility)
EFI_STATUS efi_main(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
{
UINTN Event;
+ EFI_STATUS Status;
+ EFI_TIME* Time;
+ gST = SystemTable;
+ gBS = gST->BootServices;
+ gRT = gST->RuntimeServices;
#if defined(_GNU_EFI)
InitializeLib(ImageHandle, SystemTable);
@@ -21,9 +30,22 @@ EFI_STATUS efi_main(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
*/
Print(L"\n%H*** Sync Bootloading ***%N\n\n");
+ Status = gST->ConOut->OutputString(gST->ConOut, L"Hello World\n\r");
+ if (EFI_ERROR(Status))
+ return Status;
+ Status = gBS->AllocatePool(EfiBootServicesData,
+ sizeof(EFI_TIME),
+ (VOID**)&Time);
- Print(L"%BPress any key to exit.%N\n");
+ if (EFI_ERROR(Status))
+ return Status;
+
+ Status = gRT->GetTime(Time, NULL);
+ if (EFI_ERROR(Status))
+ return Status;
+
+ Print(L"%EPress any key to exit.%N\n");
SystemTable->ConIn->Reset(SystemTable->ConIn, FALSE);
SystemTable->BootServices->WaitForEvent(1, &SystemTable->ConIn->WaitForKey, &Event);
#if defined(_DEBUG)
@@ -31,5 +53,5 @@ EFI_STATUS efi_main(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
SystemTable->RuntimeServices->ResetSystem(EfiResetShutdown, EFI_SUCCESS, 0, NULL);
#endif
- return EFI_SUCCESS;
+ return Status;
}
diff --git a/x64/Debug/gnu-efi.lib b/x64/Debug/gnu-efi.lib
index a83d6c4..eee027a 100644
Binary files a/x64/Debug/gnu-efi.lib and b/x64/Debug/gnu-efi.lib differ
diff --git a/x64/Debug/gnu-efi.pdb b/x64/Debug/gnu-efi.pdb
index 6704fbd..e21e218 100644
Binary files a/x64/Debug/gnu-efi.pdb and b/x64/Debug/gnu-efi.pdb differ
diff --git a/x64/Debug/gnu-efi/boxdraw.obj b/x64/Debug/gnu-efi/boxdraw.obj
index b69f1a0..0c2a3d1 100644
Binary files a/x64/Debug/gnu-efi/boxdraw.obj and b/x64/Debug/gnu-efi/boxdraw.obj differ
diff --git a/x64/Debug/gnu-efi/cmdline.obj b/x64/Debug/gnu-efi/cmdline.obj
index 3df2fc7..5d68fd3 100644
Binary files a/x64/Debug/gnu-efi/cmdline.obj and b/x64/Debug/gnu-efi/cmdline.obj differ
diff --git a/x64/Debug/gnu-efi/console.obj b/x64/Debug/gnu-efi/console.obj
index f3c6b2f..6b61981 100644
Binary files a/x64/Debug/gnu-efi/console.obj and b/x64/Debug/gnu-efi/console.obj differ
diff --git a/x64/Debug/gnu-efi/crc.obj b/x64/Debug/gnu-efi/crc.obj
index 18c5fac..ef57bbd 100644
Binary files a/x64/Debug/gnu-efi/crc.obj and b/x64/Debug/gnu-efi/crc.obj differ
diff --git a/x64/Debug/gnu-efi/data.obj b/x64/Debug/gnu-efi/data.obj
index 7258fa2..4241c71 100644
Binary files a/x64/Debug/gnu-efi/data.obj and b/x64/Debug/gnu-efi/data.obj differ
diff --git a/x64/Debug/gnu-efi/debug.obj b/x64/Debug/gnu-efi/debug.obj
index 6e90f7b..6c95ba4 100644
Binary files a/x64/Debug/gnu-efi/debug.obj and b/x64/Debug/gnu-efi/debug.obj differ
diff --git a/x64/Debug/gnu-efi/dpath.obj b/x64/Debug/gnu-efi/dpath.obj
index 1f681e3..efe560b 100644
Binary files a/x64/Debug/gnu-efi/dpath.obj and b/x64/Debug/gnu-efi/dpath.obj differ
diff --git a/x64/Debug/gnu-efi/efirtlib.obj b/x64/Debug/gnu-efi/efirtlib.obj
index 8189c5a..8a15d94 100644
Binary files a/x64/Debug/gnu-efi/efirtlib.obj and b/x64/Debug/gnu-efi/efirtlib.obj differ
diff --git a/x64/Debug/gnu-efi/error.obj b/x64/Debug/gnu-efi/error.obj
index 731f495..9a5997c 100644
Binary files a/x64/Debug/gnu-efi/error.obj and b/x64/Debug/gnu-efi/error.obj differ
diff --git a/x64/Debug/gnu-efi/event.obj b/x64/Debug/gnu-efi/event.obj
index 0a8c0b4..a10e975 100644
Binary files a/x64/Debug/gnu-efi/event.obj and b/x64/Debug/gnu-efi/event.obj differ
diff --git a/x64/Debug/gnu-efi/gnu-efi.log b/x64/Debug/gnu-efi/gnu-efi.log
index 13cacad..289e0d7 100644
--- a/x64/Debug/gnu-efi/gnu-efi.log
+++ b/x64/Debug/gnu-efi/gnu-efi.log
@@ -28,4 +28,4 @@
initplat.c
math.c
Generating Code...
- gnu-efi.vcxproj -> C:\Users\Gem\Documents\uefi-simple\x64\Debug\gnu-efi.lib
+ gnu-efi.vcxproj -> C:\Users\Gem\Documents\red\x64\Debug\gnu-efi.lib
diff --git a/x64/Debug/gnu-efi/gnu-efi.pdb b/x64/Debug/gnu-efi/gnu-efi.pdb
index 6704fbd..e21e218 100644
Binary files a/x64/Debug/gnu-efi/gnu-efi.pdb and b/x64/Debug/gnu-efi/gnu-efi.pdb differ
diff --git a/x64/Debug/gnu-efi/gnu-efi.tlog/CL.command.1.tlog b/x64/Debug/gnu-efi/gnu-efi.tlog/CL.command.1.tlog
index d5b6a37..95f18d5 100644
Binary files a/x64/Debug/gnu-efi/gnu-efi.tlog/CL.command.1.tlog and b/x64/Debug/gnu-efi/gnu-efi.tlog/CL.command.1.tlog differ
diff --git a/x64/Debug/gnu-efi/gnu-efi.tlog/CL.read.1.tlog b/x64/Debug/gnu-efi/gnu-efi.tlog/CL.read.1.tlog
index e0cd1fc..e9246b9 100644
Binary files a/x64/Debug/gnu-efi/gnu-efi.tlog/CL.read.1.tlog and b/x64/Debug/gnu-efi/gnu-efi.tlog/CL.read.1.tlog differ
diff --git a/x64/Debug/gnu-efi/gnu-efi.tlog/CL.write.1.tlog b/x64/Debug/gnu-efi/gnu-efi.tlog/CL.write.1.tlog
index 8170448..adb8534 100644
Binary files a/x64/Debug/gnu-efi/gnu-efi.tlog/CL.write.1.tlog and b/x64/Debug/gnu-efi/gnu-efi.tlog/CL.write.1.tlog differ
diff --git a/x64/Debug/gnu-efi/gnu-efi.tlog/Lib-link.read.1.tlog b/x64/Debug/gnu-efi/gnu-efi.tlog/Lib-link.read.1.tlog
index 894fdf8..215adf5 100644
Binary files a/x64/Debug/gnu-efi/gnu-efi.tlog/Lib-link.read.1.tlog and b/x64/Debug/gnu-efi/gnu-efi.tlog/Lib-link.read.1.tlog differ
diff --git a/x64/Debug/gnu-efi/gnu-efi.tlog/Lib-link.write.1.tlog b/x64/Debug/gnu-efi/gnu-efi.tlog/Lib-link.write.1.tlog
index 820f2e2..8a2192f 100644
Binary files a/x64/Debug/gnu-efi/gnu-efi.tlog/Lib-link.write.1.tlog and b/x64/Debug/gnu-efi/gnu-efi.tlog/Lib-link.write.1.tlog differ
diff --git a/x64/Debug/gnu-efi/gnu-efi.tlog/Lib.command.1.tlog b/x64/Debug/gnu-efi/gnu-efi.tlog/Lib.command.1.tlog
index 12ebf11..bb4522a 100644
Binary files a/x64/Debug/gnu-efi/gnu-efi.tlog/Lib.command.1.tlog and b/x64/Debug/gnu-efi/gnu-efi.tlog/Lib.command.1.tlog differ
diff --git a/x64/Debug/gnu-efi/gnu-efi.tlog/gnu-efi.lastbuildstate b/x64/Debug/gnu-efi/gnu-efi.tlog/gnu-efi.lastbuildstate
index ed802cb..2b74022 100644
--- a/x64/Debug/gnu-efi/gnu-efi.tlog/gnu-efi.lastbuildstate
+++ b/x64/Debug/gnu-efi/gnu-efi.tlog/gnu-efi.lastbuildstate
@@ -1,2 +1,2 @@
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native64Bit:WindowsTargetPlatformVersion=10.0.17763.0
-Debug|x64|C:\Users\Gem\Documents\uefi-simple\|
+Debug|x64|C:\Users\Gem\Documents\red\|
diff --git a/x64/Debug/gnu-efi/guid.obj b/x64/Debug/gnu-efi/guid.obj
index c8ee1c0..e0a3b60 100644
Binary files a/x64/Debug/gnu-efi/guid.obj and b/x64/Debug/gnu-efi/guid.obj differ
diff --git a/x64/Debug/gnu-efi/hand.obj b/x64/Debug/gnu-efi/hand.obj
index 89d7cd7..0eae815 100644
Binary files a/x64/Debug/gnu-efi/hand.obj and b/x64/Debug/gnu-efi/hand.obj differ
diff --git a/x64/Debug/gnu-efi/hw.obj b/x64/Debug/gnu-efi/hw.obj
index fb97db3..dc858e2 100644
Binary files a/x64/Debug/gnu-efi/hw.obj and b/x64/Debug/gnu-efi/hw.obj differ
diff --git a/x64/Debug/gnu-efi/init.obj b/x64/Debug/gnu-efi/init.obj
index 20efc17..bb17c2e 100644
Binary files a/x64/Debug/gnu-efi/init.obj and b/x64/Debug/gnu-efi/init.obj differ
diff --git a/x64/Debug/gnu-efi/initplat.obj b/x64/Debug/gnu-efi/initplat.obj
index 73033db..83ed53a 100644
Binary files a/x64/Debug/gnu-efi/initplat.obj and b/x64/Debug/gnu-efi/initplat.obj differ
diff --git a/x64/Debug/gnu-efi/lock.obj b/x64/Debug/gnu-efi/lock.obj
index acd09fe..8eb72a1 100644
Binary files a/x64/Debug/gnu-efi/lock.obj and b/x64/Debug/gnu-efi/lock.obj differ
diff --git a/x64/Debug/gnu-efi/math.obj b/x64/Debug/gnu-efi/math.obj
index 8269882..0ad002c 100644
Binary files a/x64/Debug/gnu-efi/math.obj and b/x64/Debug/gnu-efi/math.obj differ
diff --git a/x64/Debug/gnu-efi/misc.obj b/x64/Debug/gnu-efi/misc.obj
index 9ea6aaa..b5ce91a 100644
Binary files a/x64/Debug/gnu-efi/misc.obj and b/x64/Debug/gnu-efi/misc.obj differ
diff --git a/x64/Debug/gnu-efi/print.obj b/x64/Debug/gnu-efi/print.obj
index d2981cf..c40493d 100644
Binary files a/x64/Debug/gnu-efi/print.obj and b/x64/Debug/gnu-efi/print.obj differ
diff --git a/x64/Debug/gnu-efi/rtdata.obj b/x64/Debug/gnu-efi/rtdata.obj
index c950f6a..55a06c4 100644
Binary files a/x64/Debug/gnu-efi/rtdata.obj and b/x64/Debug/gnu-efi/rtdata.obj differ
diff --git a/x64/Debug/gnu-efi/rtlock.obj b/x64/Debug/gnu-efi/rtlock.obj
index cf6e24b..9b749ea 100644
Binary files a/x64/Debug/gnu-efi/rtlock.obj and b/x64/Debug/gnu-efi/rtlock.obj differ
diff --git a/x64/Debug/gnu-efi/rtstr.obj b/x64/Debug/gnu-efi/rtstr.obj
index 0e67829..fece20f 100644
Binary files a/x64/Debug/gnu-efi/rtstr.obj and b/x64/Debug/gnu-efi/rtstr.obj differ
diff --git a/x64/Debug/gnu-efi/smbios.obj b/x64/Debug/gnu-efi/smbios.obj
index a323d0d..7c515ba 100644
Binary files a/x64/Debug/gnu-efi/smbios.obj and b/x64/Debug/gnu-efi/smbios.obj differ
diff --git a/x64/Debug/gnu-efi/sread.obj b/x64/Debug/gnu-efi/sread.obj
index 0270bec..04358c9 100644
Binary files a/x64/Debug/gnu-efi/sread.obj and b/x64/Debug/gnu-efi/sread.obj differ
diff --git a/x64/Debug/gnu-efi/str.obj b/x64/Debug/gnu-efi/str.obj
index 52948f8..9fe71f7 100644
Binary files a/x64/Debug/gnu-efi/str.obj and b/x64/Debug/gnu-efi/str.obj differ
diff --git a/x64/Debug/gnu-efi/vm.obj b/x64/Debug/gnu-efi/vm.obj
index 4495520..a716054 100644
Binary files a/x64/Debug/gnu-efi/vm.obj and b/x64/Debug/gnu-efi/vm.obj differ
diff --git a/x64/Debug/uefi-simple.pdb b/x64/Debug/uefi-simple.pdb
index 70117b6..51bf14a 100644
Binary files a/x64/Debug/uefi-simple.pdb and b/x64/Debug/uefi-simple.pdb differ
diff --git a/x64/Debug/uefi-simple/main.obj b/x64/Debug/uefi-simple/main.obj
index 92d12ee..ca668f3 100644
Binary files a/x64/Debug/uefi-simple/main.obj and b/x64/Debug/uefi-simple/main.obj differ
diff --git a/x64/Debug/uefi-simple/uefi-simple.log b/x64/Debug/uefi-simple/uefi-simple.log
index 513e3ee..d214372 100644
--- a/x64/Debug/uefi-simple/uefi-simple.log
+++ b/x64/Debug/uefi-simple/uefi-simple.log
@@ -1,2 +1,2 @@
main.c
- uefi-simple.vcxproj -> C:\Users\Gem\Documents\uefi-simple\x64\Debug\uefi-simple.efi
+ uefi-simple.vcxproj -> C:\Users\Gem\Documents\red\x64\Debug\uefi-simple.efi
diff --git a/x64/Debug/uefi-simple/uefi-simple.tlog/CL.command.1.tlog b/x64/Debug/uefi-simple/uefi-simple.tlog/CL.command.1.tlog
index 2cba74c..437e717 100644
Binary files a/x64/Debug/uefi-simple/uefi-simple.tlog/CL.command.1.tlog and b/x64/Debug/uefi-simple/uefi-simple.tlog/CL.command.1.tlog differ
diff --git a/x64/Debug/uefi-simple/uefi-simple.tlog/CL.read.1.tlog b/x64/Debug/uefi-simple/uefi-simple.tlog/CL.read.1.tlog
index a5283e0..8fe7513 100644
Binary files a/x64/Debug/uefi-simple/uefi-simple.tlog/CL.read.1.tlog and b/x64/Debug/uefi-simple/uefi-simple.tlog/CL.read.1.tlog differ
diff --git a/x64/Debug/uefi-simple/uefi-simple.tlog/CL.write.1.tlog b/x64/Debug/uefi-simple/uefi-simple.tlog/CL.write.1.tlog
index cff84fb..17cce0f 100644
Binary files a/x64/Debug/uefi-simple/uefi-simple.tlog/CL.write.1.tlog and b/x64/Debug/uefi-simple/uefi-simple.tlog/CL.write.1.tlog differ
diff --git a/x64/Debug/uefi-simple/uefi-simple.tlog/link.command.1.tlog b/x64/Debug/uefi-simple/uefi-simple.tlog/link.command.1.tlog
index 25c86c6..b0b1b38 100644
Binary files a/x64/Debug/uefi-simple/uefi-simple.tlog/link.command.1.tlog and b/x64/Debug/uefi-simple/uefi-simple.tlog/link.command.1.tlog differ
diff --git a/x64/Debug/uefi-simple/uefi-simple.tlog/link.read.1.tlog b/x64/Debug/uefi-simple/uefi-simple.tlog/link.read.1.tlog
index f5fc68a..b136742 100644
Binary files a/x64/Debug/uefi-simple/uefi-simple.tlog/link.read.1.tlog and b/x64/Debug/uefi-simple/uefi-simple.tlog/link.read.1.tlog differ
diff --git a/x64/Debug/uefi-simple/uefi-simple.tlog/link.write.1.tlog b/x64/Debug/uefi-simple/uefi-simple.tlog/link.write.1.tlog
index 004d884..748c833 100644
Binary files a/x64/Debug/uefi-simple/uefi-simple.tlog/link.write.1.tlog and b/x64/Debug/uefi-simple/uefi-simple.tlog/link.write.1.tlog differ
diff --git a/x64/Debug/uefi-simple/uefi-simple.tlog/uefi-simple.lastbuildstate b/x64/Debug/uefi-simple/uefi-simple.tlog/uefi-simple.lastbuildstate
index ed802cb..2b74022 100644
--- a/x64/Debug/uefi-simple/uefi-simple.tlog/uefi-simple.lastbuildstate
+++ b/x64/Debug/uefi-simple/uefi-simple.tlog/uefi-simple.lastbuildstate
@@ -1,2 +1,2 @@
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native64Bit:WindowsTargetPlatformVersion=10.0.17763.0
-Debug|x64|C:\Users\Gem\Documents\uefi-simple\|
+Debug|x64|C:\Users\Gem\Documents\red\|
diff --git a/x64/Debug/uefi-simple/vc141.pdb b/x64/Debug/uefi-simple/vc141.pdb
index 6f16fd5..8f5e306 100644
Binary files a/x64/Debug/uefi-simple/vc141.pdb and b/x64/Debug/uefi-simple/vc141.pdb differ