TheMindVirus / roscos

Visual Studio 2019 Compiled Source Directories of Windows Render/Compute-Only-Sample Drivers (ROS/COS)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

roscos

Visual Studio 2019 Compiled Source Directories of Windows Render/Compute-Only-Sample Drivers (ROS/COS)

rosisalive

Cautionary Note

The drivers listed in this repository have been attenuated so that they no longer function but are stable enough to install as legacy drivers through Device Manager.

They may be used as the building blocks for the Raspberry Pi Windows 10 DirectX/Direct3D Render and Graphics Drivers and they enumerate as pictured above.

Please refrain from installing if you are unfamiliar with their potentially undiscovered flaws and side-effects.

If the installation isn't working, you may need to recompile the drivers with Visual Studio 2019 WDK for Windows 10 SDK 19041. The following Registry Keys are also worth checking:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers]
"DisableVersionMismatchCheck"=dword:1

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\RenderOnlySample]
; And all subkeys

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectX]
; And all subkeys

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\DirectX]
; And all subkeys

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\ROOT\BasicRender\0000]
; And all subkeys (Informational)

If You Get Stuck

You may find yourself in the situation where whenever you uninstall the driver you encounter a BSOD. Don't worry, this is normal during testing. First Power Off your Raspberry Pi and plug in the storage media into your Driver Development PC.

Then Install and make use of Dism++, a free utility to manage Drivers on an offline installation of Windows:
https://www.majorgeeks.com/files/details/dism.html (be careful not to remove essential drivers, only Display Adaptors -> Barthouse -> roskmd.sys)

Also Install and make use of Unlocker, a free utility to manage Immovable Files on an offline installation of Windows:
https://www.majorgeeks.com/files/details/unlocker.html (use with caution, only use it to force delete X:\Windows\System32\drivers\roskmd.sys)

Then safely eject your storage media and plug it back into the Raspberry Pi and reboot. Once Windows loads again, open Device Manager -> View -> Show Hidden Devices (Checked) and look in Display Adaptors. If "Render Only Sample Device" appears with an exclamation mark icon, uninstall it and optionally reboot.

You are now ready to repeat the process should this happen again. Try to avoid the root causes of such BSOD's involving trying to free objects and pointers which have not been initialised. Pointers which have not been initialised may not always be NULL. They can be a variety of actually valid values (especially 0xCCCCCCCC on 32-bit systems and 0xCDCDCDCDCDCDCDCD on 64-bit systems). Don't worry, this is most likely not your fault, it is a vaguely known compiler issue for detecting bad memory conditions.

Quick Links

OpenAdapter10_2:

HRESULT APIENTRY OpenAdapter10_2( D3D10DDIARG_OPENADAPTER* pArgs )

new RosUmdDevice:

RosUmdDevice * pRosUmdDevice = new (pArgs->hDrvDevice.pDrvPrivate) RosUmdDevice(pThis, pArgs);

m_pWDDM1_3DeviceFuncs:
*m_pWDDM1_3DeviceFuncs = RosUmdDeviceDdi::s_deviceFuncsWDDM1_3;

s_deviceFuncsWDDM1_3:
const D3DWDDM1_3DDI_DEVICEFUNCS RosUmdDeviceDdi::s_deviceFuncsWDDM1_3 =

new CosUmdDevice:

CosUmd12Device * pCosUmdDevice = new (pArgs->hDrvDevice.pDrvPrivate) CosUmd12Device(pThis, pArgs);

CosUmd12Device::Standup:
void CosUmd12Device::Standup()

m_pUMCallbacks:
const D3D12DDI_CORELAYER_DEVICECALLBACKS_0050* m_pUMCallbacks;

debug(n/w):

#define debug(...) \

About

Visual Studio 2019 Compiled Source Directories of Windows Render/Compute-Only-Sample Drivers (ROS/COS)

License:MIT License


Languages

Language:C++ 91.3%Language:C 6.7%Language:Visual Basic .NET 0.7%Language:HLSL 0.5%Language:GLSL 0.3%Language:LLVM 0.3%Language:Assembly 0.1%Language:Batchfile 0.1%Language:PowerShell 0.0%