From 277f023825e58eda35a6febd8ef08a2d8b404d35 Mon Sep 17 00:00:00 2001 From: _xeroxz Date: Thu, 17 Dec 2020 19:23:21 -0800 Subject: [PATCH] added internal base --- internal.sln | 31 ++ internal/direct.h | 91 ++++ internal/direct.lib | Bin 0 -> 1084104 bytes internal/image_base.asm | 9 + internal/image_base.h | 5 + internal/internal.filters | 84 ++++ internal/internal.vcxproj | 255 +++++++++++ internal/internal.vcxproj.filters | 77 ++++ internal/internal.vcxproj.user | 4 + internal/no_alloc/no_alloc.cpp | 21 + internal/no_alloc/no_alloc.hpp | 138 ++++++ internal/no_crt/no_crt.cpp | 73 ++++ internal/no_crt/no_crt.h | 8 + internal/no_gui/no_gui.cpp | 383 +++++++++++++++++ internal/no_gui/no_gui.h | 150 +++++++ internal/no_gui/no_shaders.h | 124 ++++++ internal/no_gui/no_state_saver.cpp | 198 +++++++++ internal/no_gui/no_state_saver.h | 56 +++ internal/no_imports.h | 658 +++++++++++++++++++++++++++++ internal/present.cpp | 65 +++ 20 files changed, 2430 insertions(+) create mode 100644 internal.sln create mode 100644 internal/direct.h create mode 100644 internal/direct.lib create mode 100644 internal/image_base.asm create mode 100644 internal/image_base.h create mode 100644 internal/internal.filters create mode 100644 internal/internal.vcxproj create mode 100644 internal/internal.vcxproj.filters create mode 100644 internal/internal.vcxproj.user create mode 100644 internal/no_alloc/no_alloc.cpp create mode 100644 internal/no_alloc/no_alloc.hpp create mode 100644 internal/no_crt/no_crt.cpp create mode 100644 internal/no_crt/no_crt.h create mode 100644 internal/no_gui/no_gui.cpp create mode 100644 internal/no_gui/no_gui.h create mode 100644 internal/no_gui/no_shaders.h create mode 100644 internal/no_gui/no_state_saver.cpp create mode 100644 internal/no_gui/no_state_saver.h create mode 100644 internal/no_imports.h create mode 100644 internal/present.cpp diff --git a/internal.sln b/internal.sln new file mode 100644 index 0000000..74ff24d --- /dev/null +++ b/internal.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.29613.14 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "internal", "internal\internal.vcxproj", "{A5A06423-4302-4CE2-A42C-D4416DD7B507}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A5A06423-4302-4CE2-A42C-D4416DD7B507}.Debug|x64.ActiveCfg = Debug|x64 + {A5A06423-4302-4CE2-A42C-D4416DD7B507}.Debug|x64.Build.0 = Debug|x64 + {A5A06423-4302-4CE2-A42C-D4416DD7B507}.Debug|x86.ActiveCfg = Debug|Win32 + {A5A06423-4302-4CE2-A42C-D4416DD7B507}.Debug|x86.Build.0 = Debug|Win32 + {A5A06423-4302-4CE2-A42C-D4416DD7B507}.Release|x64.ActiveCfg = Release|x64 + {A5A06423-4302-4CE2-A42C-D4416DD7B507}.Release|x64.Build.0 = Release|x64 + {A5A06423-4302-4CE2-A42C-D4416DD7B507}.Release|x86.ActiveCfg = Release|Win32 + {A5A06423-4302-4CE2-A42C-D4416DD7B507}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {3F3A27AF-88C8-4517-B633-97CA6C558844} + EndGlobalSection +EndGlobal diff --git a/internal/direct.h b/internal/direct.h new file mode 100644 index 0000000..763f831 --- /dev/null +++ b/internal/direct.h @@ -0,0 +1,91 @@ +#pragma once +#include +#include +#include + +extern "C" NTSTATUS __protect_virtual_memory( + HANDLE p_handle, + void** base_addr, + std::size_t* bytes_to_protect, + std::uint32_t new_protect, + std::uint32_t* old_protect +); + +extern "C" NTSTATUS __write_virtual_memory( + HANDLE p_handle, + void* base_addr, + void* buffer, + std::size_t size, + std::size_t* bytes_written +); + +extern "C" NTSTATUS __read_virtual_memory( + HANDLE p_handle, + void* base_addr, + void* buffer, + std::size_t size, + std::size_t* bytes_written +); + +extern "C" NTSTATUS __alloc_virtual_memory( + HANDLE p_handle, + void** base_addr, + std::uint32_t zero_bits, + std::size_t* size, + std::uint32_t alloc_type, + std::uint32_t protect +); + +namespace direct +{ + __forceinline bool protect_virtual_memory( + HANDLE p_handle, + void* base_addr, + std::size_t size, + std::uint32_t protect, + std::uint32_t* old_protect + ) + { + return ERROR_SUCCESS == ::__protect_virtual_memory(p_handle, &base_addr, &size, protect, old_protect); + } + + __forceinline bool write_virtual_memory( + HANDLE p_handle, + void* base_addr, + void* buffer, + std::size_t size + ) + { + std::size_t bytes_written; + return ERROR_SUCCESS == __write_virtual_memory(p_handle, base_addr, buffer, size, &bytes_written); + } + + __forceinline bool read_virtual_memory( + HANDLE p_handle, + void* addr, + void* buffer, + std::size_t size + ) + { + std::size_t bytes_written; + return ERROR_SUCCESS == ::__read_virtual_memory(p_handle, addr, buffer, size, &bytes_written); + } + + __forceinline void* alloc_virtual_memory( + HANDLE p_handle, + std::size_t size, + std::uint32_t protect + ) + { + void* base_addr = NULL; + ::__alloc_virtual_memory( + p_handle, + &base_addr, + NULL, + &size, + MEM_COMMIT | MEM_RESERVE, + protect + ); + return base_addr; + } +} \ No newline at end of file diff --git a/internal/direct.lib b/internal/direct.lib new file mode 100644 index 0000000000000000000000000000000000000000..690bb6a40123fd132b28f5754d09a35478852899 GIT binary patch literal 1084104 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/EI0j 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�eUkHwnPg+&9leAq08q27v*D-pk#mOotjpQ2YNYSRsF{(+r z=_mzh02F3IO*9z*#qMG6DRK{=@JTNtqM!%(4Nucjhpk{6(C1|$DSuD~Z>JIGa~Ql| z;R)_>FU*=%4NXbJO*T_Ld0lJ~{e`m$95%NXA&0K-=Ec@D>_8ST>`VD$F zM4g_vg%NuCDq$r6kQdP&FP0mf3q-W=kk0+V$<#`0cge%QdOJig0g(m3psaNWKC|>( z@|;tspNvw&{IaUL6f<&M z@#?CEM(JlW$&fclbTatvLar$@$8Tx00_L&O)UGzzSZj#;_1aoE#4c)IwKo8rp!Bl7 z8xl8h;`W@5H2K8s5^vy0Ze3+OCHE(SfEX3{f}NqT7Y5&RTq^_*M|-q`$7p3oZ|y+IK*yb5z&@F}At5TYZEv(2LcYE*=0&)0Biixme)WH}j;)rgJZ z12-H2m6t##_#>0@a@PnTwj_ysaJZ07?+fA=q*aYAD7b{=tZAAE9_LHsb;)SI__qKk zwF2J|&QD5?j*56w@9B0=)QdAp(hSyc{_M2y`lk{+-fuk9Z~Ud-2ygXz9R}AbZNuqJ z>;R$o6R-VkE*vn`p+e`rdkMr`ut~BM*^Sr!_9mX3|1H}D=`3eo8+Lf!2^XN3A�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 z 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

{_p{%7UEmLx!5?&kf5hM) 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 pU$Ma@ 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 wlCK-aB;lcA*o+T!?etlky^6* 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 + +// TIB ---> TEB (linear address) ---> PEB (base address) +extern "C" std::uintptr_t __image_base(void); \ No newline at end of file diff --git a/internal/internal.filters b/internal/internal.filters new file mode 100644 index 0000000..46f9fff --- /dev/null +++ b/internal/internal.filters @@ -0,0 +1,84 @@ + + + + + {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;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + {3fc44ebb-cb8f-464a-a305-a69883fe7ca9} + + + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files\font + + + Header Files + + + \ No newline at end of file diff --git a/internal/internal.vcxproj b/internal/internal.vcxproj new file mode 100644 index 0000000..a1ca47d --- /dev/null +++ b/internal/internal.vcxproj @@ -0,0 +1,255 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + {A5A06423-4302-4CE2-A42C-D4416DD7B507} + Win32Proj + noalloc + 10.0 + + + + DynamicLibrary + true + ClangCL + Unicode + false + + + DynamicLibrary + false + ClangCL + true + Unicode + false + + + DynamicLibrary + true + ClangCL + Unicode + false + + + DynamicLibrary + false + v142 + true + Unicode + false + + + + + + + + + + + + + + + + + + + + + + true + true + + + true + true + + + false + true + + + false + true + C:\Users\Andreas Wehrmann\Desktop\xerox internal master\internal;$(IncludePath) + + + + + + TurnOffAllWarnings + true + _SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING;_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS + true + stdcpp17 + false + MultiThreaded + false + Default + false + $(DXSDK_DIR)include;%(AdditionalIncludeDirectories) + false + false + false + Default + + + Windows + true + false + true + %(AdditionalDependencies) + + + true + + + + + + + TurnOffAllWarnings + true + _SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING;_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS + true + stdcpp17 + false + MultiThreaded + false + Default + false + $(DXSDK_DIR)include;%(AdditionalIncludeDirectories) + false + false + false + Default + + + Windows + true + false + true + %(AdditionalDependencies) + + + true + + + + + + + TurnOffAllWarnings + true + false + true + _SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING;_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS + true + stdcpp17 + false + MultiThreaded + false + Default + false + false + $(DXSDK_DIR)include;%(AdditionalIncludeDirectories) + false + false + + + Windows + true + true + true + false + true + %(AdditionalDependencies) + + + true + + + + + + + TurnOffAllWarnings + true + false + true + _SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING;_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS + true + stdcpp17 + false + MultiThreaded + false + Default + false + false + $(DXSDK_DIR)include;%(AdditionalIncludeDirectories) + false + false + Disabled + + + Windows + true + true + true + false + true + ucrt.lib;direct.lib;%(AdditionalDependencies) + + + true + + + + + + + + + + + + + + + + + + + + + + Document + + + + + + + + + + \ No newline at end of file diff --git a/internal/internal.vcxproj.filters b/internal/internal.vcxproj.filters new file mode 100644 index 0000000..8f0494a --- /dev/null +++ b/internal/internal.vcxproj.filters @@ -0,0 +1,77 @@ + + + + + headers\no_alloc + + + headers\no_crt + + + headers + + + headers\no_gui + + + headers\no_gui + + + headers\no_gui + + + headers + + + headers + + + + + {7aa51226-3d6f-435f-a764-9cca554e94be} + + + {24b4469c-bcb2-4707-8486-f6e879654ae7} + + + {f2eca2b3-14df-46b7-a038-9476c6b9e7df} + + + {272d0338-6a74-47b1-b08f-16f4ea9bf110} + + + {9a4972bd-755f-4d8c-ab1a-3fa628113da4} + + + {ddbfbb9f-faf5-4c70-947f-4b157336dfd2} + + + {2ebed959-7c32-4b6e-883f-eb1f13647ef9} + + + {8e9f1673-a856-4c60-a04c-3b60a5dd1cfa} + + + + + source\no_gui + + + source\no_gui + + + source\no_crt + + + source\no_alloc + + + source + + + + + source + + + \ No newline at end of file diff --git a/internal/internal.vcxproj.user b/internal/internal.vcxproj.user new file mode 100644 index 0000000..88a5509 --- /dev/null +++ b/internal/internal.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/internal/no_alloc/no_alloc.cpp b/internal/no_alloc/no_alloc.cpp new file mode 100644 index 0000000..f0a33a9 --- /dev/null +++ b/internal/no_alloc/no_alloc.cpp @@ -0,0 +1,21 @@ +#include "no_alloc.hpp" + +void* malloc(std::size_t size) +{ + return heap.allocate(size); +} + +void free(void* ptr, std::size_t size) +{ + heap.deallocate((std::uint8_t*)ptr, size); +} + +void* operator new(std::size_t size) +{ + return malloc(size); +} + +void operator delete(void* ptr, unsigned __int64 size) +{ + free(ptr, size); +} \ No newline at end of file diff --git a/internal/no_alloc/no_alloc.hpp b/internal/no_alloc/no_alloc.hpp new file mode 100644 index 0000000..5fb36ca --- /dev/null +++ b/internal/no_alloc/no_alloc.hpp @@ -0,0 +1,138 @@ +/* + Author: xerox + Date: 4/23/2020 + + example: + std::vector> test; + test.reserve(30); +*/ + +#pragma once +#include + +#define HEAP_SIZE 0x2000 + +// taken from: +// https://github.com/charles-salvia/charles/blob/master/stack_allocator.hpp +template > +class no_alloc +{ +public: + + typedef typename std::allocator_traits::value_type value_type; + typedef typename std::allocator_traits::pointer pointer; + typedef typename std::allocator_traits::const_pointer const_pointer; + typedef typename Allocator::reference reference; + typedef typename Allocator::const_reference const_reference; + typedef typename std::allocator_traits::size_type size_type; + typedef typename std::allocator_traits::difference_type difference_type; + typedef typename std::allocator_traits::const_void_pointer const_void_pointer; + typedef Allocator allocator_type; + +public: + explicit no_alloc(const allocator_type& alloc = allocator_type()) + : m_allocator(alloc), m_begin(this->heap), m_end(this->heap + heap_size), + m_stack_pointer(this->heap) + { } + + template + no_alloc(const no_alloc& other) + : m_allocator(other.m_allocator), m_begin(other.m_begin), m_end(other.m_end), + m_stack_pointer(other.m_stack_pointer) + { } + + constexpr static size_type capacity() + { + return heap_size; + } + + pointer allocate(size_type n, const_void_pointer hint = const_void_pointer()) + { + pointer result = m_stack_pointer; + m_stack_pointer += n; + return result; + } + + void deallocate(pointer p, size_type n) + { + m_stack_pointer -= n; + } + + size_type max_size() const noexcept + { + return m_allocator.max_size(); + } + + template + void construct(U* p, Args&&... args) + { + m_allocator.construct(p, std::forward(args)...); + } + + template + void destroy(U* p) + { + m_allocator.destroy(p); + } + + pointer address(reference x) const noexcept + { + if (pointer_to_internal_buffer(std::addressof(x))) + { + return std::addressof(x); + } + + return m_allocator.address(x); + } + + const_pointer address(const_reference x) const noexcept + { + if (pointer_to_internal_buffer(std::addressof(x))) + { + return std::addressof(x); + } + + return m_allocator.address(x); + } + + template + struct rebind { typedef no_alloc other; }; + + pointer buffer() const noexcept + { + return m_begin; + } + +private: + + bool pointer_to_internal_buffer(const_pointer p) const + { + return (!(std::less()(p, m_begin)) && (std::less()(p, m_end))); + } + + allocator_type m_allocator; + pointer m_begin; + pointer m_end; + pointer m_stack_pointer; + T heap[heap_size]; +}; + +template +static bool operator == (const no_alloc& lhs, + const no_alloc& rhs) noexcept +{ + return lhs.buffer() == rhs.buffer(); +} + +template +static bool operator != (const no_alloc& lhs, + const no_alloc& rhs) noexcept +{ + return !(lhs == rhs); +} + +inline no_alloc heap; +void* operator new(std::size_t size); +void operator delete(void* ptr, unsigned __int64); +void* malloc(std::size_t size); +void free(void*, std::size_t size); \ No newline at end of file diff --git a/internal/no_crt/no_crt.cpp b/internal/no_crt/no_crt.cpp new file mode 100644 index 0000000..9a67817 --- /dev/null +++ b/internal/no_crt/no_crt.cpp @@ -0,0 +1,73 @@ +#include "no_crt.h" + +int atexit(void (*func) (void)) +{ + func(); + return NULL; +} + +int memcmp(const void* buf1, const void* buf2, size_t count) +{ + if (!count) + return(0); + + while (--count && *(char*)buf1 == *(char*)buf2) + { + buf1 = (char*)buf1 + 1; + + buf2 = (char*)buf2 + 1; + + } + return(*((unsigned char*)buf1) - *((unsigned char*)buf2)); + +} + +void* memcpy(void* memTo, const void* memFrom, size_t size) +{ + if (!memTo || !memFrom) + return nullptr; + const char* temFrom = (const char*)memFrom; + char* temTo = (char*)memTo; + while (size-- > 0) + *temTo++ = *temFrom++; + return memTo; +} + +void* memmove(void* dst, const void* src, size_t count) +{ + if (!dst || !src) + return nullptr; + void* ret = dst; + if (dst <= src || (char*)dst >= ((char*)src + count)) + { + while (count--) + { + *(char*)dst = *(char*)src; + dst = (char*)dst + 1; + src = (char*)src + 1; + } + } + else + { + + dst = (char*)dst + count - 1; + src = (char*)src + count - 1; + while (count--) + { + *(char*)dst = *(char*)src; + dst = (char*)dst - 1; + src = (char*)src - 1; + } + } + return ret; +} + +void* memset(void* dest, int c, size_t count) +{ + char* bytes = (char*)dest; + while (count--) + { + *bytes++ = (char)c; + } + return dest; +} \ No newline at end of file diff --git a/internal/no_crt/no_crt.h b/internal/no_crt/no_crt.h new file mode 100644 index 0000000..a343a9d --- /dev/null +++ b/internal/no_crt/no_crt.h @@ -0,0 +1,8 @@ +#pragma once +#include "../no_alloc/no_alloc.hpp" + +int atexit(void (*func) (void)); +int memcmp(const void* buf1, const void* buf2, size_t count); +void* memcpy(void* memTo, const void* memFrom, size_t size); +void* memmove(void* dst, const void* src, size_t count); +void* memset(void* dest, int c, size_t count); \ No newline at end of file diff --git a/internal/no_gui/no_gui.cpp b/internal/no_gui/no_gui.cpp new file mode 100644 index 0000000..949519b --- /dev/null +++ b/internal/no_gui/no_gui.cpp @@ -0,0 +1,383 @@ +#include "no_gui.h" + +bool no_gui::init(IDXGISwapChain* swapchain) +{ + HRESULT hr; + m_swap_chain = swapchain; + if (!m_swap_chain) + return false; + + m_swap_chain->GetDevice(__uuidof(m_device), (void**)&m_device); + m_device->GetImmediateContext(&m_device_context); + hr = m_device->CreateVertexShader(vs_blob, sizeof(vs_blob), NULL, &m_vertex_shader); + + D3D11_INPUT_ELEMENT_DESC layout[] = + { + { "POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0, D3D11_INPUT_PER_VERTEX_DATA, 0 }, + { "COLOR", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, 12, D3D11_INPUT_PER_VERTEX_DATA, 0 } + }; + + hr = m_device->CreateInputLayout(layout, ARRAYSIZE(layout), vs_blob, sizeof(vs_blob), &m_input_layout); + hr = m_device->CreatePixelShader(ps_blob, sizeof(ps_blob), NULL, &m_pixel_shader); + + D3D11_BUFFER_DESC buffer_desc; + + buffer_desc.Usage = D3D11_USAGE_DYNAMIC; + buffer_desc.ByteWidth = 4 * sizeof(COLOR_VERTEX); + buffer_desc.BindFlags = D3D11_BIND_VERTEX_BUFFER; + buffer_desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE; + buffer_desc.MiscFlags = 0; + + hr = m_device->CreateBuffer(&buffer_desc, NULL, &m_pvertex_buffer); + if (FAILED(hr)) + return false; + + D3D11_BLEND_DESC blend_state_desc; + ZeroMemory(&blend_state_desc, sizeof(blend_state_desc)); + blend_state_desc.AlphaToCoverageEnable = false; + blend_state_desc.RenderTarget[0].BlendEnable = true; + blend_state_desc.RenderTarget[0].SrcBlend = D3D11_BLEND_SRC_ALPHA; + blend_state_desc.RenderTarget[0].DestBlend = D3D11_BLEND_INV_SRC_ALPHA; + blend_state_desc.RenderTarget[0].BlendOp = D3D11_BLEND_OP_ADD; + blend_state_desc.RenderTarget[0].SrcBlendAlpha = D3D11_BLEND_ONE; + blend_state_desc.RenderTarget[0].DestBlendAlpha = D3D11_BLEND_INV_SRC_ALPHA; + blend_state_desc.RenderTarget[0].BlendOpAlpha = D3D11_BLEND_OP_ADD; + blend_state_desc.RenderTarget[0].RenderTargetWriteMask = D3D11_COLOR_WRITE_ENABLE_ALL; + + hr = m_device->CreateBlendState(&blend_state_desc, &m_transparency); + if (FAILED(hr)) + return false; + + memset((void*)vs_blob, NULL, sizeof(vs_blob)); + memset((void*)ps_blob, NULL, sizeof(ps_blob)); + return true; +} + +void no_gui::reset() +{ + init(m_swap_chain); +} + +void no_gui::fill_rect(float x, float y, float w, float h, color color) +{ + if (!m_device_context) + return; + + int a = color.A & 0xff; + int r = color.R & 0xff; + int g = color.G & 0xff; + int b = color.B & 0xff; + + DXGI_SWAP_CHAIN_DESC swap_chain_desc; + memset(&swap_chain_desc, 0, sizeof(swap_chain_desc)); + + m_swap_chain->GetDesc(&swap_chain_desc); + float width = swap_chain_desc.BufferDesc.Width; + float height = swap_chain_desc.BufferDesc.Height; + + UINT numViewports = 1; + D3D11_VIEWPORT vp = { 0, 0, width, height, 1, 1 }; + m_device_context->RSSetViewports(numViewports, &vp); + + float x0 = x; + float y0 = y; + float x1 = x + w; + float y1 = y + h; + + float xx0 = 2.0f * (x0 - 0.5f) / vp.Width - 1.0f; + float yy0 = 1.0f - 2.0f * (y0 - 0.5f) / vp.Height; + float xx1 = 2.0f * (x1 - 0.5f) / vp.Width - 1.0f; + float yy1 = 1.0f - 2.0f * (y1 - 0.5f) / vp.Height; + + COLOR_VERTEX* v = NULL; + D3D11_MAPPED_SUBRESOURCE mapData; + + if (FAILED(m_device_context->Map(m_pvertex_buffer, NULL, D3D11_MAP_WRITE_DISCARD, NULL, &mapData))) + return; + + v = (COLOR_VERTEX*)mapData.pData; + + v[0].Position.x = (float)x0; + v[0].Position.y = (float)y0; + v[0].Position.z = 0; + v[0].Color = vec4( + ((float)r / 255.0f), + ((float)g / 255.0f), + ((float)b / 255.0f), + ((float)a / 255.0f)); + + v[1].Position.x = (float)x1; + v[1].Position.y = (float)y1; + v[1].Position.z = 0; + v[1].Color = vec4( + ((float)r / 255.0f), + ((float)g / 255.0f), + ((float)b / 255.0f), + ((float)a / 255.0f)); + + v[0].Position.x = xx0; + v[0].Position.y = yy0; + v[0].Position.z = 0; + v[0].Color = vec4( + ((float)r / 255.0f), + ((float)g / 255.0f), + ((float)b / 255.0f), + ((float)a / 255.0f)); + + v[1].Position.x = xx1; + v[1].Position.y = yy0; + v[1].Position.z = 0; + v[1].Color = vec4( + ((float)r / 255.0f), + ((float)g / 255.0f), + ((float)b / 255.0f), + ((float)a / 255.0f)); + + v[2].Position.x = xx0; + v[2].Position.y = yy1; + v[2].Position.z = 0; + v[2].Color = vec4( + ((float)r / 255.0f), + ((float)g / 255.0f), + ((float)b / 255.0f), + ((float)a / 255.0f)); + + v[3].Position.x = xx1; + v[3].Position.y = yy1; + v[3].Position.z = 0; + v[3].Color = vec4( + ((float)r / 255.0f), + ((float)g / 255.0f), + ((float)b / 255.0f), + ((float)a / 255.0f)); + + + m_device_context->Unmap(m_pvertex_buffer, NULL); + + UINT Stride = sizeof(COLOR_VERTEX); + UINT Offset = 0; + + m_device_context->IASetVertexBuffers(0, 1, &m_pvertex_buffer, &Stride, &Offset); + m_device_context->IASetPrimitiveTopology(D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP); + m_device_context->IASetInputLayout(m_input_layout); + + m_device_context->VSSetShader(m_vertex_shader, 0, 0); + m_device_context->PSSetShader(m_pixel_shader, 0, 0); + m_device_context->GSSetShader(NULL, 0, 0); + m_device_context->Draw(4, 0); +} + +void no_gui::draw_line(float x1, float y1, float x2, float y2, color color) +{ + float blendFactor[] = { 1.0f, 1.0f, 1.0f, 1.0f }; + m_device_context->OMSetBlendState(m_transparency, blendFactor, 0xffffffff); + + if (m_device_context == NULL) { + return; + } + int a = color.A & 0xff; + int r = color.R & 0xff; + int g = color.G & 0xff; + int b = color.B & 0xff; + + UINT viewportNumber = 1; + + D3D11_VIEWPORT vp; + + m_device_context->RSGetViewports(&viewportNumber, &vp); + + float xx0 = 2.0f * (x1 - 0.5f) / vp.Width - 1.0f; + float yy0 = 1.0f - 2.0f * (y1 - 0.5f) / vp.Height; + float xx1 = 2.0f * (x2 - 0.5f) / vp.Width - 1.0f; + float yy1 = 1.0f - 2.0f * (y2 - 0.5f) / vp.Height; + + COLOR_VERTEX* v = NULL; + + D3D11_MAPPED_SUBRESOURCE mapData; + + if (FAILED(m_device_context->Map(m_pvertex_buffer, NULL, D3D11_MAP_WRITE_DISCARD, NULL, &mapData))) + return; + + v = (COLOR_VERTEX*)mapData.pData; + v[0].Position.x = xx0; + v[0].Position.y = yy0; + + v[0].Position.z = 0; + v[0].Color = vec4( + ((float)r / 255.0f), + ((float)g / 255.0f), + ((float)b / 255.0f), + ((float)a / 255.0f)); + + v[1].Position.x = xx1; + v[1].Position.y = yy1; + v[1].Position.z = 0; + v[1].Color = vec4( + ((float)r / 255.0f), + ((float)g / 255.0f), + ((float)b / 255.0f), + ((float)a / 255.0f)); + + m_device_context->Unmap(m_pvertex_buffer, NULL); + UINT Stride = sizeof(COLOR_VERTEX); + UINT Offset = 0; + + m_device_context->IASetVertexBuffers(0, 1, &m_pvertex_buffer, &Stride, &Offset); + m_device_context->IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP); + m_device_context->IASetInputLayout(m_input_layout); + + m_device_context->VSSetShader(m_vertex_shader, 0, 0); + m_device_context->PSSetShader(m_pixel_shader, 0, 0); + m_device_context->GSSetShader(NULL, 0, 0); + m_device_context->Draw(2, 0); +} + +void no_gui::draw_rect(float x, float y, float w, float h, color strokeColor) +{ + fill_rect(x, y, w, 1, strokeColor); + fill_rect(x, y + h - 1, w, 1, strokeColor); + fill_rect(x, y + 1, 1, h - 2 * 1, strokeColor); + fill_rect(x + w - 1, y + 1, 1, h - 2 * 1, strokeColor); +} + +void no_gui::draw_outlined_rect(const vec4& rect, const color& strokeColor, const color& color) +{ + fill_rect(rect.x, rect.y, rect.z, rect.w, color); + draw_rect(rect.x, rect.y, rect.z, rect.w, strokeColor); +} + +void no_gui::draw_corner_box(int x, int y, int w, int h, int borderPx, color& temp) +{ + fill_rect(x - (w / 2), (y - h + borderPx), w / 3, borderPx, temp); //top + fill_rect(x - (w / 2) + w - w / 3, (y - h + borderPx), w / 3, borderPx, temp); //top + fill_rect(x - (w / 2), (y - h + borderPx), borderPx, w / 3, temp); //left + fill_rect(x - (w / 2), (y - h + borderPx) + h - w / 3, borderPx, w / 3, temp); //left + fill_rect(x - (w / 2), y, w / 3, borderPx, temp); //bottom + fill_rect(x - (w / 2) + w - w / 3, y, w / 3, borderPx, temp); //bottom + fill_rect((x + w - borderPx) - (w / 2), (y - h + borderPx), borderPx, w / 3, temp); //right + fill_rect((x + w - borderPx) - (w / 2), (y - h + borderPx) + h - w / 3, borderPx, w / 3, temp); //right +} + +void no_gui::draw_border(int x, int y, int w, int h, int px, color& temp) +{ + fill_rect(x, (y + h - px), w, px, temp); + fill_rect(x, y, px, h, temp); + fill_rect(x, y, w, px, temp); + fill_rect((x + w - px), y, px, h, temp); +} + +void no_gui::draw_cross(float x, float y, float width, float height, const color& color) +{ + fill_rect(x - width, y - 0.5f, (width * 2.0f), 1.0f, color); + fill_rect(x - 0.5f, y - height, 1.0f, (height * 2.0f), color); +} + +void no_gui::draw_circle(float x0, float y0, float radius, const color& color, float thickness) +{ + int x = radius, y = 0; + int radius_error = 1 - x; + + while (x >= y) + { + fill_rect(x + x0, y + y0, thickness, thickness, color); + fill_rect(y + x0, x + y0, thickness, thickness, color); + fill_rect(-x + x0, y + y0, thickness, thickness, color); + fill_rect(-y + x0, x + y0, thickness, thickness, color); + fill_rect(-x + x0, -y + y0, thickness, thickness, color); + fill_rect(-y + x0, -x + y0, thickness, thickness, color); + fill_rect(x + x0, -y + y0, thickness, thickness, color); + fill_rect(y + x0, -x + y0, thickness, thickness, color); + y++; + + if (radius_error < 0) + radius_error += 2 * y + 1; + else + { + x--; + radius_error += 2 * (y - x + 1); + } + } +} + +void no_gui::draw_health_bar(int x, int y, float health, float max_health, int w, int h, bool is_shield) +{ + auto c_black = ::color(12, 12, 12, 228); + auto c_red = ::color(255, 0, 0, 255); + auto c_green = ::color(255, 0, 255, 0); + auto c_yellow = ::color(255, 255, 255, 0); + auto c_cyan = ::color(255, 0, 255, 255); + auto c_orange = ::color(255, 255, 153, 0); + + if (is_shield) + { + c_red = ::color(255, 102, 2, 209); + c_green = ::color(255, 19, 105, 244); + c_yellow = ::color(255, 13, 175, 229); + c_orange = ::color(255, 171, 13, 229); + } + + if (health > max_health) + health = max_health; + + FLOAT hp = health; + FLOAT factor = max_health / 4; + auto color = ::color(0.f, 0.f, 0.f, 0.f); + + if (hp <= factor) + color = c_red; + else if (hp <= factor * 2) + color = c_orange; + else if (hp <= factor * 3) + color = c_yellow; + else if (hp <= max_health) + color = c_green; + + fill_rect(x, y, w, h + 1, ::color(255, 0, 0, 0)); + UINT hw = (UINT)(((w - 2) * health) / max_health); + fill_rect(x + 1, y + 1, hw, h - 1, color); + +} + +HWND no_gui::get_window() +{ + return m_hwnd; +} + +float no_gui::get_width() +{ + return m_width; +} + +float no_gui::get_height() +{ + return m_height; +} + +void no_gui::begin_scene() +{ + m_swap_chain->GetBuffer(0, __uuidof(ID3D11Texture2D), (void**)&m_back_buffer); + ID3D11RenderTargetView* p_rtv; + m_device->CreateRenderTargetView(m_back_buffer, NULL, &p_rtv); + m_device_context->OMSetRenderTargets(1, &p_rtv, NULL); + + DXGI_SWAP_CHAIN_DESC swap_chain_desc; + memset(&swap_chain_desc, 0, sizeof(swap_chain_desc)); + m_swap_chain->GetDesc(&swap_chain_desc); + m_width = swap_chain_desc.BufferDesc.Width; + m_height = swap_chain_desc.BufferDesc.Height; + + m_restore_state = false; + if (SUCCEEDED(m_state_saver.save_current_state(m_device_context))) + m_restore_state = true; + m_device_context->IASetInputLayout(m_input_layout); +} + +void no_gui::end_scene() +{ + D3D11_TEXTURE2D_DESC backBufferDesc; + m_back_buffer->GetDesc(&backBufferDesc); + m_back_buffer->Release(); + + if (m_restore_state) + m_state_saver.restore_saved_state(); +} \ No newline at end of file diff --git a/internal/no_gui/no_gui.h b/internal/no_gui/no_gui.h new file mode 100644 index 0000000..ec23210 --- /dev/null +++ b/internal/no_gui/no_gui.h @@ -0,0 +1,150 @@ +#pragma once +#include +#include +#include +#include + +#include "no_shaders.h" +#include "no_state_saver.h" + +template inline void SAFE_DELETE(T*& p) +{ + if (p) + { + delete p; + p = NULL; + } +} + +template inline void SAFE_DELETE_ARRAY(T*& p) +{ + if (p) + { + delete[] p; + p = NULL; + } +} + +template inline void SAFE_RELEASE(T*& p) +{ + if (p) + { + p->Release(); + p = NULL; + } +} + +class vec3 +{ +public: + float x, y, z; + vec3(); + vec3(float, float, float); +}; + +inline vec3::vec3() +{ + x = y = z = 0.f; +} + +inline vec3::vec3(float _x, float _y, float _z) +{ + x = _x; + y = _y; + z = _z; +} +class vec4 +{ +public: + float x, y, z, w; + vec4(); + vec4(float, float, float, float); +}; + +inline vec4::vec4() +{ + x = y = z = w = 0.f; +} + +inline vec4::vec4(float _x, float _y, float _z, float _w) +{ + x = _x; + y = _y; + z = _z; + w = _w; +} +struct COLOR_VERTEX +{ + vec3 Position; + vec4 Color; +}; + +typedef unsigned char uchar; + +class color +{ +public: + uchar A, R, G, B; + + color() + { + A = R = G = B = 0; + } + + color(uchar A, uchar R, uchar G, uchar B) + { + this->A = A; + this->R = R; + this->G = G; + this->B = B; + } +}; + +enum _ALIGN : DWORD +{ + ALIGN_LEFT = 0, + ALIGN_RIGHT, + ALIGN_CENTER, +}; + + +class no_gui +{ +public: + + bool init(IDXGISwapChain* swap_chain); + void begin_scene(); + void end_scene(); + void reset(); + + void fill_rect(float x, float y, float w, float h, color color); + void draw_circle(float x0, float y0, float radius, const color& color, float thickness = 1.5f); + + void draw_outlined_rect(const vec4& rect, const color& stroke_color, const color& color); + void draw_line(float x1, float y1, float x2, float y2, color color); + void draw_rect(float x, float y, float w, float h, color stroke_color); + void draw_corner_box(int x, int y, int w, int h, int border_px, color& temp); + void draw_border(int x, int y, int w, int h, int px, color& temp); + void draw_cross(float X, float Y, float Width, float Height, const color& d_color); + void draw_health_bar(int x, int y, float health, float max_health, int w, int h, bool is_shield = false); + + float get_width(); + float get_height(); + HWND get_window(); + +private: + IDXGISwapChain* m_swap_chain; + ID3D11Device* m_device; + ID3D11DeviceContext* m_device_context; + ID3D11InputLayout* m_input_layout; + ID3D11Buffer* m_pvertex_buffer; + no_state_saver m_state_saver; + ID3D11VertexShader* m_vertex_shader; + ID3D11PixelShader* m_pixel_shader; + ID3D11BlendState* m_transparency; + ID3D11Texture2D* m_back_buffer; + + float m_width, m_height; + HWND m_hwnd; + bool m_restore_state; +}; diff --git a/internal/no_gui/no_shaders.h b/internal/no_gui/no_shaders.h new file mode 100644 index 0000000..90b51d6 --- /dev/null +++ b/internal/no_gui/no_shaders.h @@ -0,0 +1,124 @@ +#pragma once +// precompiled shaders +static const unsigned char vs_blob[] = { + 0x44, 0x58, 0x42, 0x43, 0x5f, 0x0b, 0x2c, 0x91, 0x23, 0xda, 0xe8, 0xae, + 0x94, 0x4b, 0x71, 0xfd, 0x64, 0x11, 0xb9, 0x13, 0x01, 0x00, 0x00, 0x00, + 0x10, 0x02, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, + 0x80, 0x00, 0x00, 0x00, 0xd0, 0x00, 0x00, 0x00, 0x24, 0x01, 0x00, 0x00, + 0x94, 0x01, 0x00, 0x00, 0x52, 0x44, 0x45, 0x46, 0x44, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x1c, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfe, 0xff, 0x00, 0x01, 0x00, 0x00, + 0x1c, 0x00, 0x00, 0x00, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x6f, 0x66, + 0x74, 0x20, 0x28, 0x52, 0x29, 0x20, 0x48, 0x4c, 0x53, 0x4c, 0x20, 0x53, + 0x68, 0x61, 0x64, 0x65, 0x72, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x69, 0x6c, + 0x65, 0x72, 0x20, 0x31, 0x30, 0x2e, 0x31, 0x00, 0x49, 0x53, 0x47, 0x4e, + 0x48, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, + 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, + 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x00, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, + 0x4f, 0x4e, 0x00, 0xab, 0x4f, 0x53, 0x47, 0x4e, 0x4c, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x43, 0x4f, 0x4c, 0x4f, + 0x52, 0x00, 0x53, 0x56, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, + 0x4e, 0x00, 0xab, 0xab, 0x53, 0x48, 0x44, 0x52, 0x68, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x01, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x5f, 0x00, 0x00, 0x03, + 0xf2, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5f, 0x00, 0x00, 0x03, + 0xf2, 0x10, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x03, + 0xf2, 0x20, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x04, + 0xf2, 0x20, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x36, 0x00, 0x00, 0x05, 0xf2, 0x20, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x46, 0x1e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x05, + 0xf2, 0x20, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x46, 0x1e, 0x10, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x01, 0x53, 0x54, 0x41, 0x54, + 0x74, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +static const unsigned char ps_blob[] = { + 0x44, 0x58, 0x42, 0x43, 0x71, 0xee, 0xb8, 0x3b, 0xe2, 0x77, 0xf8, 0x55, + 0x47, 0x8a, 0x89, 0xf3, 0x78, 0x2f, 0x06, 0xe9, 0x01, 0x00, 0x00, 0x00, + 0xa0, 0x01, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, + 0x80, 0x00, 0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0x00, + 0x24, 0x01, 0x00, 0x00, 0x52, 0x44, 0x45, 0x46, 0x44, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x1c, 0x00, 0x00, 0x00, 0x00, 0x04, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, + 0x1c, 0x00, 0x00, 0x00, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x6f, 0x66, + 0x74, 0x20, 0x28, 0x52, 0x29, 0x20, 0x48, 0x4c, 0x53, 0x4c, 0x20, 0x53, + 0x68, 0x61, 0x64, 0x65, 0x72, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x69, 0x6c, + 0x65, 0x72, 0x20, 0x31, 0x30, 0x2e, 0x31, 0x00, 0x49, 0x53, 0x47, 0x4e, + 0x28, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, + 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x00, 0xab, 0xab, 0x4f, 0x53, 0x47, 0x4e, + 0x2c, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, + 0x53, 0x56, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x00, 0xab, 0xab, + 0x53, 0x48, 0x44, 0x52, 0x38, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, + 0x0e, 0x00, 0x00, 0x00, 0x62, 0x10, 0x00, 0x03, 0xf2, 0x10, 0x10, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x03, 0xf2, 0x20, 0x10, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x05, 0xf2, 0x20, 0x10, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x46, 0x1e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3e, 0x00, 0x00, 0x01, 0x53, 0x54, 0x41, 0x54, 0x74, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0 +}; + + +/* +static char shader[] = { +"Texture2D g_texture : register(t0);" +"SamplerState g_sampler : register(s1);" + +"struct VSOut" +"{" +" float4 Pos : SV_POSITION;" +" float4 Col : COLOR;" +" float2 Uv : TEXCOORD;" +"};" + +"struct VSInput" +"{" +" float4 Pos : POSITION;" +" float4 Col : COLOR;" +" float2 Uv : TEXCOORD;" +"};" + +"VSOut VS( VSInput Input )" +"{" +" VSOut Result;" +" Result.Col = Input.Col;" +" Result.Pos = Input.Pos;" +" Result.Uv = Input.Uv;" +" return Result;" +"}" + +"float4 PS( VSOut Input ) : SV_TARGET" +"{" +" if(Input.Uv.x == 0 && Input.Uv.y == 0)" +" return Input.Col;" + + "return g_texture.Sample( g_sampler, Input.Uv ) * Input.Col;" +"};" +};*/ \ No newline at end of file diff --git a/internal/no_gui/no_state_saver.cpp b/internal/no_gui/no_state_saver.cpp new file mode 100644 index 0000000..04c6cbe --- /dev/null +++ b/internal/no_gui/no_state_saver.cpp @@ -0,0 +1,198 @@ +#include "no_gui.h" + +no_state_saver::no_state_saver() : + m_saved_state(false), + m_feature_level(D3D_FEATURE_LEVEL_11_0), + m_pcontext(NULL), + m_primitive_topology(D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED), + m_pinput_layout(NULL), + m_pblend_state(NULL), + m_sample_mask(0xffffffff), + m_pdepth_stencil_state(NULL), + m_stencilRef(0), + m_pRasterizerState(NULL), + m_pPSSRV(NULL), + m_pSamplerState(NULL), + m_pVS(NULL), + m_numVSClassInstances(0), + m_pVSConstantBuffer(NULL), + m_pGS(NULL), + m_numGSClassInstances(0), + m_pGSConstantBuffer(NULL), + m_pGSSRV(NULL), + m_pPS(NULL), + m_numPSClassInstances(0), + m_pHS(NULL), + m_numHSClassInstances(0), + m_pDS(NULL), + m_numDSClassInstances(0), + m_pVB(NULL), + m_vertexStride(0), + m_vertexOffset(0), + m_pIndexBuffer(NULL), + m_indexFormat(DXGI_FORMAT_UNKNOWN), + m_indexOffset(0) +{ + for (int i = 0; i < 4; ++i) + m_blend_factor[i] = 0.0f; + for (int i = 0; i < 256; ++i) + { + m_pVSClassInstances[i] = NULL; + m_pGSClassInstances[i] = NULL; + m_pPSClassInstances[i] = NULL; + m_pHSClassInstances[i] = NULL; + m_pDSClassInstances[i] = NULL; + } +} + +no_state_saver::~no_state_saver() +{ + release_saved_state(); +} + +HRESULT no_state_saver::save_current_state(ID3D11DeviceContext *pContext) +{ + if (m_saved_state) + release_saved_state(); + if (pContext == NULL) + return E_INVALIDARG; + + ID3D11Device *p_device; + pContext->GetDevice(&p_device); + if (p_device != NULL) { + m_feature_level = p_device->GetFeatureLevel(); + p_device->Release(); + } + + pContext->AddRef(); + m_pcontext = pContext; + + m_pcontext->IAGetPrimitiveTopology(&m_primitive_topology); + m_pcontext->IAGetInputLayout(&m_pinput_layout); + + m_pcontext->OMGetBlendState(&m_pblend_state, m_blend_factor, &m_sample_mask); + m_pcontext->OMGetDepthStencilState(&m_pdepth_stencil_state, &m_stencilRef); + + m_pcontext->RSGetState(&m_pRasterizerState); + + m_numVSClassInstances = 256; + m_pcontext->VSGetShader(&m_pVS, m_pVSClassInstances, &m_numVSClassInstances); + m_pcontext->VSGetConstantBuffers(0, 1, &m_pVSConstantBuffer); + + m_numPSClassInstances = 256; + m_pcontext->PSGetShader(&m_pPS, m_pPSClassInstances, &m_numPSClassInstances); + m_pcontext->PSGetShaderResources(0, 1, &m_pPSSRV); + pContext->PSGetSamplers(0, 1, &m_pSamplerState); + + if (m_feature_level >= D3D_FEATURE_LEVEL_10_0) + { + m_numGSClassInstances = 256; + m_pcontext->GSGetShader(&m_pGS, m_pGSClassInstances, &m_numGSClassInstances); + m_pcontext->GSGetConstantBuffers(0, 1, &m_pGSConstantBuffer); + + m_pcontext->GSGetShaderResources(0, 1, &m_pGSSRV); + + if (m_feature_level >= D3D_FEATURE_LEVEL_11_0) + { + m_numHSClassInstances = 256; + m_pcontext->HSGetShader(&m_pHS, m_pHSClassInstances, &m_numHSClassInstances); + + m_numDSClassInstances = 256; + m_pcontext->DSGetShader(&m_pDS, m_pDSClassInstances, &m_numDSClassInstances); + } + } + + m_pcontext->IAGetVertexBuffers(0, 1, &m_pVB, &m_vertexStride, &m_vertexOffset); + + m_pcontext->IAGetIndexBuffer(&m_pIndexBuffer, &m_indexFormat, &m_indexOffset); + + m_saved_state = true; + + return S_OK; +} + +HRESULT no_state_saver::restore_saved_state() +{ + if (!m_saved_state) + return E_FAIL; + + m_pcontext->IASetPrimitiveTopology(m_primitive_topology); + m_pcontext->IASetInputLayout(m_pinput_layout); + + m_pcontext->OMSetBlendState(m_pblend_state, m_blend_factor, m_sample_mask); + m_pcontext->OMSetDepthStencilState(m_pdepth_stencil_state, m_stencilRef); + + m_pcontext->RSSetState(m_pRasterizerState); + + m_pcontext->VSSetShader(m_pVS, m_pVSClassInstances, m_numVSClassInstances); + m_pcontext->VSSetConstantBuffers(0, 1, &m_pVSConstantBuffer); + + m_pcontext->PSSetShader(m_pPS, m_pPSClassInstances, m_numPSClassInstances); + m_pcontext->PSSetShaderResources(0, 1, &m_pPSSRV); + m_pcontext->PSSetSamplers(0, 1, &m_pSamplerState); + + if (m_feature_level >= D3D_FEATURE_LEVEL_10_0) + { + m_pcontext->GSSetShader(m_pGS, m_pGSClassInstances, m_numGSClassInstances); + m_pcontext->GSSetConstantBuffers(0, 1, &m_pGSConstantBuffer); + m_pcontext->GSSetShaderResources(0, 1, &m_pGSSRV); + + if (m_feature_level >= D3D_FEATURE_LEVEL_11_0) + { + m_pcontext->HSSetShader(m_pHS, m_pHSClassInstances, m_numHSClassInstances); + m_pcontext->DSSetShader(m_pDS, m_pDSClassInstances, m_numDSClassInstances); + } + } + + m_pcontext->IASetVertexBuffers(0, 1, &m_pVB, &m_vertexStride, &m_vertexOffset); + m_pcontext->IASetIndexBuffer(m_pIndexBuffer, m_indexFormat, m_indexOffset); + return S_OK; +} + +void no_state_saver::release_saved_state() +{ + m_primitive_topology = D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED; + SAFE_RELEASE(m_pinput_layout); + SAFE_RELEASE(m_pblend_state); + for (int i = 0; i < 4; ++i) + m_blend_factor[i] = 0.0f; + m_sample_mask = 0xffffffff; + SAFE_RELEASE(m_pdepth_stencil_state); + m_stencilRef = 0; + SAFE_RELEASE(m_pRasterizerState); + SAFE_RELEASE(m_pPSSRV); + SAFE_RELEASE(m_pSamplerState); + SAFE_RELEASE(m_pVS); + for (UINT i = 0; i < m_numVSClassInstances; ++i) + SAFE_RELEASE(m_pVSClassInstances[i]); + m_numVSClassInstances = 0; + SAFE_RELEASE(m_pVSConstantBuffer); + SAFE_RELEASE(m_pGS); + for (UINT i = 0; i < m_numGSClassInstances; ++i) + SAFE_RELEASE(m_pGSClassInstances[i]); + m_numGSClassInstances = 0; + SAFE_RELEASE(m_pGSConstantBuffer); + SAFE_RELEASE(m_pGSSRV); + SAFE_RELEASE(m_pPS); + for (UINT i = 0; i < m_numPSClassInstances; ++i) + SAFE_RELEASE(m_pPSClassInstances[i]); + m_numPSClassInstances = 0; + SAFE_RELEASE(m_pHS); + for (UINT i = 0; i < m_numHSClassInstances; ++i) + SAFE_RELEASE(m_pHSClassInstances[i]); + m_numHSClassInstances = 0; + SAFE_RELEASE(m_pDS); + for (UINT i = 0; i < m_numDSClassInstances; ++i) + SAFE_RELEASE(m_pDSClassInstances[i]); + m_numDSClassInstances = 0; + SAFE_RELEASE(m_pVB); + m_vertexStride = 0; + m_vertexOffset = 0; + SAFE_RELEASE(m_pIndexBuffer); + m_indexFormat = DXGI_FORMAT_UNKNOWN; + m_indexOffset = 0; + + SAFE_RELEASE(m_pcontext); + m_feature_level = D3D_FEATURE_LEVEL_11_0; + m_saved_state = false; +} \ No newline at end of file diff --git a/internal/no_gui/no_state_saver.h b/internal/no_gui/no_state_saver.h new file mode 100644 index 0000000..bd42b13 --- /dev/null +++ b/internal/no_gui/no_state_saver.h @@ -0,0 +1,56 @@ +#pragma once +#include "no_gui.h" + +class no_state_saver +{ +private: + bool m_saved_state; + D3D_FEATURE_LEVEL m_feature_level; + ID3D11DeviceContext *m_pcontext; + D3D11_PRIMITIVE_TOPOLOGY m_primitive_topology; + ID3D11InputLayout *m_pinput_layout; + ID3D11BlendState *m_pblend_state; + float m_blend_factor[4]; + UINT m_sample_mask; + ID3D11DepthStencilState *m_pdepth_stencil_state; + UINT m_stencilRef; + ID3D11RasterizerState *m_pRasterizerState; + ID3D11ShaderResourceView *m_pPSSRV; + ID3D11SamplerState *m_pSamplerState; + ID3D11VertexShader *m_pVS; + ID3D11ClassInstance *m_pVSClassInstances[256]; + UINT m_numVSClassInstances; + ID3D11Buffer *m_pVSConstantBuffer; + ID3D11GeometryShader *m_pGS; + ID3D11ClassInstance *m_pGSClassInstances[256]; + UINT m_numGSClassInstances; + ID3D11Buffer *m_pGSConstantBuffer; + ID3D11ShaderResourceView *m_pGSSRV; + ID3D11PixelShader *m_pPS; + ID3D11ClassInstance *m_pPSClassInstances[256]; + UINT m_numPSClassInstances; + ID3D11HullShader *m_pHS; + ID3D11ClassInstance *m_pHSClassInstances[256]; + UINT m_numHSClassInstances; + ID3D11DomainShader *m_pDS; + ID3D11ClassInstance *m_pDSClassInstances[256]; + UINT m_numDSClassInstances; + ID3D11Buffer *m_pVB; + UINT m_vertexStride; + UINT m_vertexOffset; + ID3D11Buffer *m_pIndexBuffer; + DXGI_FORMAT m_indexFormat; + UINT m_indexOffset; + + no_state_saver(const no_state_saver&); + no_state_saver& operator=(const no_state_saver&); +public: + + no_state_saver(); + ~no_state_saver(); + + HRESULT save_current_state(ID3D11DeviceContext *p_context); + HRESULT restore_saved_state(); + void release_saved_state(); +}; + diff --git a/internal/no_imports.h b/internal/no_imports.h new file mode 100644 index 0000000..69325c3 --- /dev/null +++ b/internal/no_imports.h @@ -0,0 +1,658 @@ +/* + * Copyright 2018-2020 Justas Masiulis + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + // documentation is available at https://github.com/JustasMasiulis/lazy_importer + +#ifndef LAZY_IMPORTER_HPP +#define LAZY_IMPORTER_HPP + +#define LI_FN(name) \ + ::li::detail::lazy_function<::li::detail::khash(#name), decltype(&name)>() + +#define LI_FN_DEF(name) ::li::detail::lazy_function<::li::detail::khash(#name), name>() + +#define LI_MODULE(name) ::li::detail::lazy_module<::li::detail::khash(name)>() + + + +// NOTE only std::forward is used from this header. +// If there is a need to eliminate this dependency the function itself is very small. +#include +#include +#include + +#ifndef LAZY_IMPORTER_NO_FORCEINLINE +#if defined(_MSC_VER) +#define LAZY_IMPORTER_FORCEINLINE __forceinline +#elif defined(__GNUC__) && __GNUC__ > 3 +#define LAZY_IMPORTER_FORCEINLINE inline __attribute__((__always_inline__)) +#else +#define LAZY_IMPORTER_FORCEINLINE inline +#endif +#else +#define LAZY_IMPORTER_FORCEINLINE inline +#endif + +#ifdef LAZY_IMPORTER_CASE_INSENSITIVE +#define LAZY_IMPORTER_TOLOWER(c) (c >= 'A' && c <= 'Z' ? (c | (1 << 5)) : c) +#else +#define LAZY_IMPORTER_TOLOWER(c) (c) +#endif + +namespace li { + namespace detail { + + template + struct pair { + First first; + Second second; + }; + + namespace win { + + struct LIST_ENTRY_T { + const char* Flink; + const char* Blink; + }; + + struct UNICODE_STRING_T { + unsigned short Length; + unsigned short MaximumLength; + wchar_t* Buffer; + }; + + struct PEB_LDR_DATA_T { + unsigned long Length; + unsigned long Initialized; + const char* SsHandle; + LIST_ENTRY_T InLoadOrderModuleList; + }; + + struct PEB_T { + unsigned char Reserved1[2]; + unsigned char BeingDebugged; + unsigned char Reserved2[1]; + const char* Reserved3[2]; + PEB_LDR_DATA_T* Ldr; + }; + + struct LDR_DATA_TABLE_ENTRY_T { + LIST_ENTRY_T InLoadOrderLinks; + LIST_ENTRY_T InMemoryOrderLinks; + LIST_ENTRY_T InInitializationOrderLinks; + const char* DllBase; + const char* EntryPoint; + union { + unsigned long SizeOfImage; + const char* _dummy; + }; + UNICODE_STRING_T FullDllName; + UNICODE_STRING_T BaseDllName; + + LAZY_IMPORTER_FORCEINLINE const LDR_DATA_TABLE_ENTRY_T* + load_order_next() const noexcept + { + return reinterpret_cast( + InLoadOrderLinks.Flink); + } + }; + + struct IMAGE_DOS_HEADER { // DOS .EXE header + unsigned short e_magic; // Magic number + unsigned short e_cblp; // Bytes on last page of file + unsigned short e_cp; // Pages in file + unsigned short e_crlc; // Relocations + unsigned short e_cparhdr; // Size of header in paragraphs + unsigned short e_minalloc; // Minimum extra paragraphs needed + unsigned short e_maxalloc; // Maximum extra paragraphs needed + unsigned short e_ss; // Initial (relative) SS value + unsigned short e_sp; // Initial SP value + unsigned short e_csum; // Checksum + unsigned short e_ip; // Initial IP value + unsigned short e_cs; // Initial (relative) CS value + unsigned short e_lfarlc; // File address of relocation table + unsigned short e_ovno; // Overlay number + unsigned short e_res[4]; // Reserved words + unsigned short e_oemid; // OEM identifier (for e_oeminfo) + unsigned short e_oeminfo; // OEM information; e_oemid specific + unsigned short e_res2[10]; // Reserved words + long e_lfanew; // File address of new exe header + }; + + struct IMAGE_FILE_HEADER { + unsigned short Machine; + unsigned short NumberOfSections; + unsigned long TimeDateStamp; + unsigned long PointerToSymbolTable; + unsigned long NumberOfSymbols; + unsigned short SizeOfOptionalHeader; + unsigned short Characteristics; + }; + + struct IMAGE_EXPORT_DIRECTORY { + unsigned long Characteristics; + unsigned long TimeDateStamp; + unsigned short MajorVersion; + unsigned short MinorVersion; + unsigned long Name; + unsigned long Base; + unsigned long NumberOfFunctions; + unsigned long NumberOfNames; + unsigned long AddressOfFunctions; // RVA from base of image + unsigned long AddressOfNames; // RVA from base of image + unsigned long AddressOfNameOrdinals; // RVA from base of image + }; + + struct IMAGE_DATA_DIRECTORY { + unsigned long VirtualAddress; + unsigned long Size; + }; + + struct IMAGE_OPTIONAL_HEADER64 { + unsigned short Magic; + unsigned char MajorLinkerVersion; + unsigned char MinorLinkerVersion; + unsigned long SizeOfCode; + unsigned long SizeOfInitializedData; + unsigned long SizeOfUninitializedData; + unsigned long AddressOfEntryPoint; + unsigned long BaseOfCode; + unsigned long long ImageBase; + unsigned long SectionAlignment; + unsigned long FileAlignment; + unsigned short MajorOperatingSystemVersion; + unsigned short MinorOperatingSystemVersion; + unsigned short MajorImageVersion; + unsigned short MinorImageVersion; + unsigned short MajorSubsystemVersion; + unsigned short MinorSubsystemVersion; + unsigned long Win32VersionValue; + unsigned long SizeOfImage; + unsigned long SizeOfHeaders; + unsigned long CheckSum; + unsigned short Subsystem; + unsigned short DllCharacteristics; + unsigned long long SizeOfStackReserve; + unsigned long long SizeOfStackCommit; + unsigned long long SizeOfHeapReserve; + unsigned long long SizeOfHeapCommit; + unsigned long LoaderFlags; + unsigned long NumberOfRvaAndSizes; + IMAGE_DATA_DIRECTORY DataDirectory[16]; + }; + + struct IMAGE_OPTIONAL_HEADER32 { + unsigned short Magic; + unsigned char MajorLinkerVersion; + unsigned char MinorLinkerVersion; + unsigned long SizeOfCode; + unsigned long SizeOfInitializedData; + unsigned long SizeOfUninitializedData; + unsigned long AddressOfEntryPoint; + unsigned long BaseOfCode; + unsigned long BaseOfData; + unsigned long ImageBase; + unsigned long SectionAlignment; + unsigned long FileAlignment; + unsigned short MajorOperatingSystemVersion; + unsigned short MinorOperatingSystemVersion; + unsigned short MajorImageVersion; + unsigned short MinorImageVersion; + unsigned short MajorSubsystemVersion; + unsigned short MinorSubsystemVersion; + unsigned long Win32VersionValue; + unsigned long SizeOfImage; + unsigned long SizeOfHeaders; + unsigned long CheckSum; + unsigned short Subsystem; + unsigned short DllCharacteristics; + unsigned long SizeOfStackReserve; + unsigned long SizeOfStackCommit; + unsigned long SizeOfHeapReserve; + unsigned long SizeOfHeapCommit; + unsigned long LoaderFlags; + unsigned long NumberOfRvaAndSizes; + IMAGE_DATA_DIRECTORY DataDirectory[16]; + }; + + struct IMAGE_NT_HEADERS { + unsigned long Signature; + IMAGE_FILE_HEADER FileHeader; +#ifdef _WIN64 + IMAGE_OPTIONAL_HEADER64 OptionalHeader; +#else + IMAGE_OPTIONAL_HEADER32 OptionalHeader; +#endif + }; + + } // namespace win + + // hashing stuff + struct hash_t { + using value_type = unsigned long; + constexpr static value_type offset = 2166136261; + constexpr static value_type prime = 16777619; + constexpr static unsigned long long prime64 = prime; + + LAZY_IMPORTER_FORCEINLINE constexpr static value_type single(value_type value, + char c) noexcept + { + return static_cast( + (value ^ LAZY_IMPORTER_TOLOWER(c)) * + static_cast(prime)); + } + }; + + template + LAZY_IMPORTER_FORCEINLINE constexpr hash_t::value_type + khash(const CharT* str, hash_t::value_type value = hash_t::offset) noexcept + { + return (*str ? khash(str + 1, hash_t::single(value, *str)) : value); + } + + template + LAZY_IMPORTER_FORCEINLINE hash_t::value_type hash(const CharT* str) noexcept + { + hash_t::value_type value = hash_t::offset; + + for (;;) { + char c = *str++; + if (!c) + return value; + value = hash_t::single(value, c); + } + } + + LAZY_IMPORTER_FORCEINLINE hash_t::value_type hash( + const win::UNICODE_STRING_T& str) noexcept + { + auto first = str.Buffer; + const auto last = first + (str.Length / sizeof(wchar_t)); + auto value = hash_t::offset; + for (; first != last; ++first) + value = hash_t::single(value, static_cast(*first)); + + return value; + } + + LAZY_IMPORTER_FORCEINLINE pair hash_forwarded( + const char* str) noexcept + { + pair module_and_function{ + hash_t::offset, hash_t::offset + }; + + for (; *str != '.'; ++str) + module_and_function.first = hash_t::single(module_and_function.first, *str); + + ++str; + + for (; *str; ++str) + module_and_function.second = hash_t::single(module_and_function.second, *str); + + return module_and_function; + } + + + // some helper functions + LAZY_IMPORTER_FORCEINLINE const win::PEB_T* peb() noexcept + { +#if defined(_WIN64) + return reinterpret_cast(__readgsqword(0x60)); +#elif defined(_WIN32) + return reinterpret_cast(__readfsdword(0x30)); +#else +#error Unsupported platform. Open an issue and I'll probably add support. +#endif + } + + LAZY_IMPORTER_FORCEINLINE const win::PEB_LDR_DATA_T* ldr() + { + return reinterpret_cast(peb()->Ldr); + } + + LAZY_IMPORTER_FORCEINLINE const win::IMAGE_NT_HEADERS* nt_headers( + const char* base) noexcept + { + return reinterpret_cast( + base + reinterpret_cast(base)->e_lfanew); + } + + LAZY_IMPORTER_FORCEINLINE const win::IMAGE_EXPORT_DIRECTORY* image_export_dir( + const char* base) noexcept + { + return reinterpret_cast( + base + nt_headers(base)->OptionalHeader.DataDirectory->VirtualAddress); + } + + LAZY_IMPORTER_FORCEINLINE const win::LDR_DATA_TABLE_ENTRY_T* ldr_data_entry() noexcept + { + return reinterpret_cast( + ldr()->InLoadOrderModuleList.Flink); + } + + struct exports_directory { + const char* _base; + const win::IMAGE_EXPORT_DIRECTORY* _ied; + unsigned long _ied_size; + + public: + using size_type = unsigned long; + + LAZY_IMPORTER_FORCEINLINE + exports_directory(const char* base) noexcept : _base(base) + { + const auto ied_data_dir = nt_headers(base)->OptionalHeader.DataDirectory[0]; + _ied = reinterpret_cast( + base + ied_data_dir.VirtualAddress); + _ied_size = ied_data_dir.Size; + } + + LAZY_IMPORTER_FORCEINLINE explicit operator bool() const noexcept + { + return reinterpret_cast(_ied) != _base; + } + + LAZY_IMPORTER_FORCEINLINE size_type size() const noexcept + { + return _ied->NumberOfNames; + } + + LAZY_IMPORTER_FORCEINLINE const char* base() const noexcept { return _base; } + LAZY_IMPORTER_FORCEINLINE const win::IMAGE_EXPORT_DIRECTORY* ied() const noexcept + { + return _ied; + } + + LAZY_IMPORTER_FORCEINLINE const char* name(size_type index) const noexcept + { + return reinterpret_cast( + _base + reinterpret_cast( + _base + _ied->AddressOfNames)[index]); + } + + LAZY_IMPORTER_FORCEINLINE const char* address(size_type index) const noexcept + { + const auto* const rva_table = + reinterpret_cast(_base + _ied->AddressOfFunctions); + + const auto* const ord_table = reinterpret_cast( + _base + _ied->AddressOfNameOrdinals); + + return _base + rva_table[ord_table[index]]; + } + + LAZY_IMPORTER_FORCEINLINE bool is_forwarded(const char* export_address) const + noexcept + { + const auto ui_ied = reinterpret_cast(_ied); + return (export_address > ui_ied && export_address < ui_ied + _ied_size); + } + }; + + struct safe_module_enumerator { + using value_type = const detail::win::LDR_DATA_TABLE_ENTRY_T; + value_type* value; + value_type* const head; + + LAZY_IMPORTER_FORCEINLINE safe_module_enumerator() noexcept + : value(ldr_data_entry()), head(value) + {} + + LAZY_IMPORTER_FORCEINLINE void reset() noexcept { value = head; } + + LAZY_IMPORTER_FORCEINLINE bool next() noexcept + { + value = value->load_order_next(); + return value != head && value->DllBase; + } + }; + + struct unsafe_module_enumerator { + using value_type = const detail::win::LDR_DATA_TABLE_ENTRY_T*; + value_type value; + + LAZY_IMPORTER_FORCEINLINE unsafe_module_enumerator() noexcept + : value(ldr_data_entry()) + {} + + LAZY_IMPORTER_FORCEINLINE void reset() noexcept { value = ldr_data_entry(); } + + LAZY_IMPORTER_FORCEINLINE bool next() noexcept + { + value = value->load_order_next(); + return true; + } + }; + + // provides the cached functions which use Derive classes methods + template + class lazy_base { + protected: + // This function is needed because every templated function + // with different args has its own static buffer + LAZY_IMPORTER_FORCEINLINE static void*& _cache() noexcept + { + static void* value = nullptr; + return value; + } + + public: + template + LAZY_IMPORTER_FORCEINLINE static T safe() noexcept + { + return Derived::template get(); + } + + template + LAZY_IMPORTER_FORCEINLINE static T cached() noexcept + { + auto& cached = _cache(); + if (!cached) + cached = Derived::template get(); + + return (T)(cached); + } + + template + LAZY_IMPORTER_FORCEINLINE static T safe_cached() noexcept + { + return cached(); + } + }; + + template + struct lazy_module : lazy_base> { + template + LAZY_IMPORTER_FORCEINLINE static T get() noexcept + { + Enum e; + do { + if (hash(e.value->BaseDllName) == Hash) + return (T)(e.value->DllBase); + } while (e.next()); + return {}; + } + }; + + template + struct lazy_function : lazy_base, T> { + using base_type = lazy_base, T>; + + template + LAZY_IMPORTER_FORCEINLINE decltype(auto) operator()(Args&&... args) const + { +#ifndef LAZY_IMPORTER_CACHE_OPERATOR_PARENS + return get()(std::forward(args)...); +#else + return this->cached()(std::forward(args)...); +#endif + } + + template + LAZY_IMPORTER_FORCEINLINE static F get() noexcept + { + // for backwards compatability. + // Before 2.0 it was only possible to resolve forwarded exports when + // this macro was enabled +#ifdef LAZY_IMPORTER_RESOLVE_FORWARDED_EXPORTS + return forwarded(); +#else + Enum e; + do { + const exports_directory exports(e.value->DllBase); + + if (exports) { + auto export_index = exports.size(); + while (export_index--) + if (hash(exports.name(export_index)) == Hash) + return (F)(exports.address(export_index)); + } + } while (e.next()); + return {}; +#endif + } + + template + LAZY_IMPORTER_FORCEINLINE static F forwarded() noexcept + { + detail::win::UNICODE_STRING_T name; + hash_t::value_type module_hash = 0; + auto function_hash = Hash; + + Enum e; + do { + name = e.value->BaseDllName; + name.Length -= 8; // get rid of .dll extension + + if (!module_hash || hash(name) == module_hash) { + const exports_directory exports(e.value->DllBase); + + if (exports) { + auto export_index = exports.size(); + while (export_index--) + if (hash(exports.name(export_index)) == function_hash) { + const auto addr = exports.address(export_index); + + if (exports.is_forwarded(addr)) { + auto hashes = hash_forwarded( + reinterpret_cast(addr)); + + function_hash = hashes.second; + module_hash = hashes.first; + + e.reset(); + break; + } + return (F)(addr); + } + } + } + } while (e.next()); + return {}; + } + + template + LAZY_IMPORTER_FORCEINLINE static F forwarded_safe() noexcept + { + return forwarded(); + } + + template + LAZY_IMPORTER_FORCEINLINE static F forwarded_cached() noexcept + { + auto& value = base_type::_cache(); + if (!value) + value = forwarded(); + return (F)(value); + } + + template + LAZY_IMPORTER_FORCEINLINE static F forwarded_safe_cached() noexcept + { + return forwarded_cached(); + } + + template + LAZY_IMPORTER_FORCEINLINE static F in(Module m) noexcept + { + if (IsSafe && !m) + return {}; + + const exports_directory exports((const char*)(m)); + if (IsSafe && !exports) + return {}; + + for (unsigned long i{};; ++i) { + if (IsSafe && i == exports.size()) + break; + + if (hash(exports.name(i)) == Hash) + return (F)(exports.address(i)); + } + return {}; + } + + template + LAZY_IMPORTER_FORCEINLINE static F in_safe(Module m) noexcept + { + return in(m); + } + + template + LAZY_IMPORTER_FORCEINLINE static F in_cached(Module m) noexcept + { + auto& value = base_type::_cache(); + if (!value) + value = in(m); + return (F)(value); + } + + template + LAZY_IMPORTER_FORCEINLINE static F in_safe_cached(Module m) noexcept + { + return in_cached(m); + } + + template + LAZY_IMPORTER_FORCEINLINE static F nt() noexcept + { + return in(ldr_data_entry()->load_order_next()->DllBase); + } + + template + LAZY_IMPORTER_FORCEINLINE static F nt_safe() noexcept + { + return in_safe(ldr_data_entry()->load_order_next()->DllBase); + } + + template + LAZY_IMPORTER_FORCEINLINE static F nt_cached() noexcept + { + return in_cached(ldr_data_entry()->load_order_next()->DllBase); + } + + template + LAZY_IMPORTER_FORCEINLINE static F nt_safe_cached() noexcept + { + return in_safe_cached(ldr_data_entry()->load_order_next()->DllBase); + } + }; + + } +} // namespace li::detail + +#endif // include guard \ No newline at end of file diff --git a/internal/present.cpp b/internal/present.cpp new file mode 100644 index 0000000..98781c6 --- /dev/null +++ b/internal/present.cpp @@ -0,0 +1,65 @@ +#include +#include +#include "no_gui/no_gui.h" +#include "no_imports.h" + +no_gui gui; +std::atomic draw_first_init = true; +color blue(255, 0, 0, 255); +color red(255, 255, 0, 0); + +__declspec(dllexport) PHANDLE event_handle = nullptr; +using EtwEventUnregister = HANDLE(__fastcall*)(HANDLE); + +enum event_type +{ + present = 0x500100110000B2, + resize_buffers = 0x550200110000BD +}; + +void draw_handler(IDXGISwapChain* swapchain) +{ + if (draw_first_init.exchange(false)) + { + gui.init(swapchain); + const auto event_unregister = + LI_FN(GetProcAddress)( + LI_FN(GetModuleHandleA)("ntdll.dll"), + "EtwEventUnregister" + ); + + reinterpret_cast(event_unregister)(*event_handle); + } + + gui.begin_scene(); + { + gui.draw_circle(gui.get_width() / 2, gui.get_height() / 2, 100, blue); + gui.draw_cross(gui.get_width() / 2, gui.get_height() / 2, 100, 100, red); + } + gui.end_scene(); +} + +extern "C" __declspec(dllexport) ULONG event_handler +( + HANDLE handle, + event_type* event_des, + std::uint32_t data_count, + IDXGISwapChain*** swapchain +) +{ + if (event_des && swapchain) + { + // switch on the event, there is a present event + // a resize buffer event (if the window resizes) + // there are a bunch of other events you can get too... + switch (*event_des) + { + case present: + draw_handler(**swapchain); + break; + default: + break; + } + } + return true; +} \ No newline at end of file