Files
Racoon-MinecraftConsoles/LCE.Xbox/SharedSurface.h
veroxsity a2187762fd Add initial project structure and audio shims for LCE Xbox port
- Added Wide310x150Logo.png asset for application branding.
- Created LCE.Xbox project file with configurations for Debug and Release.
- Added Package.appxmanifest for application metadata and capabilities.
- Introduced SharedSurface.h for shared memory management between processes.
- Implemented AudioShim with XAudio2 integration for audio playback.
- Developed XSBParser and XWBParser for handling sound bank files.
- Created DXGIShim to intercept DXGI calls and manage swap chains.
- Defined project files for AudioShim and DXGIShim with necessary dependencies.
2026-04-19 01:38:48 +01:00

33 lines
950 B
C

#pragma once
#include <windows.h>
#define LCE_SHARED_MEMORY_NAME L"Global\\LCE_SURFACE_DATA"
#define LCE_STATE_WAITING 0
#define LCE_STATE_SC_REQUESTED 1
#define LCE_STATE_SC_READY 2
#define LCE_STATE_SC_FAILED 3
#define LCE_PRESENT_IDLE 0
#define LCE_PRESENT_REQUESTED 1
#define LCE_PRESENT_DONE 2
struct LCE_SharedData
{
void* coreWindowUnknown;
UINT width;
UINT height;
volatile LONG state;
DWORD launcherPid;
void* pDevice;
void* pImmediateContext;
void* pSwapChain;
// Present marshalling — game sets REQUESTED, CoreWindow thread calls Present and sets DONE
volatile LONG presentState;
UINT syncInterval;
UINT presentFlags;
// VSync toggle — written by game DLL, read by CoreWindow present loop.
// 0 = uncapped (default), 1 = lock to display refresh.
volatile LONG vsyncEnabled;
};