Jump to content

Remodeling Windows XP Kernel32


Dibya

Recommended Posts

@greenhillmaniac... Which wouldn't probably work anyway unless we actually backport drivers. AFAIK we could make the drivers for a former graphic card work for your card by modifying the original XP drivers. Despite the fact that the latest AMD/ATI cards use pretty much the same protocols, it's limited to basic functions only; in other words, high resolutions and refresh rates would be the "best buy" anyway. Unfortunately, other things are gonna be more specific and hardware related, so they might don't work or worse, end up with a blue screen. Besides, there are technologies that AMD Developers didn't actually even bother to implement for XP in the official drivers, like OpenCL, which won't work for sure. As to the ones from Windows 7, I'm pretty sure they would look for functions like 32Memoryalloc etc that either don't exist or have another name in XP. Actually, I'm working on bringing a codec back to XP for work-related stuff.  I modified the .vcxproj files in order to target XP and make ut video xp compatible. 
Despite the fact that it allowed me to launch the build after editing these files (ToolsVersion=10.0 and <PlatformToolset>v100</PlatformToolset>), it failed while building it. Unfortunately, that's because inttype.h is C99 and it has been fully supported starting from Visual Studio 2013. I tried with xbuild in mono, but it failed miserably. It seems that I'll have to get a C99 compiler... 6Hmpti7cmwkgFoCFNU5NdISSmlTix.jpg

Edited by FranceBB
Link to comment
Share on other sites


ATI/AMD Catalyst 14.4 covers a large range of desktop hardware for Windows XP. It was released in April 2014 and appears to be the most recent package for the XP operating system.

This is probably a good package to start with if looking to backport XP compatibility.

Features:

http://support.amd.com/en-us/download/desktop?os=Windows%20XP%20-%20Professional/Home&RenderOnServer=true

Supported products:

http://support.amd.com/en-us/download/desktop?os=Windows%20XP%20-%20Professional/Home&RenderOnServer=true#2

Link to comment
Share on other sites

I mean, functions like OpenCL are a bit superfluous at the moment. For now, I think it's more important to implement support for new cards, by supporting their power profiles, for example, and have them work on XP's DirectX 9...

I think sdfox7's advice is the best: take the last released Windows XP driver from AMD, compare the sys file with the later releases, and see where the new GPU info is stored, to implement on the XP file (again, I'm just speculating on how it could be done, not sure if it would be possible)

Link to comment
Share on other sites

Yep, I'm well aware about the 14.4v (which I saved to my desktop back when it was released). I'm gonna spend a bit more time on the video codec and then I'll work on drivers. As to NVIDIA, people got the last Titan working with a simple INF modding. 

Link to comment
Share on other sites

All I can say, Dibya is a fraudster.

1) kernel32.dll and other dlls were stolen from BlackWingCat's WindowsXP-KB2584577-v0.4-x86-ENU.exe

Here is MD5 of BlackWingCat's kernel32.dll extended for XP: DFB76D26C9F67EF92571D9F4D5A9A60A

And here is MD5 of kernel32.dll from DibyaDX11-x86-ENU-v1.exe package: DFB76D26C9F67EF92571D9F4D5A9A60A

They are equal. MD5 completely matches, functions list is the same. And all we perfectly know that BlackWingCat is an assembler guru, read his blog.

2) He said he took original d3d10.dll from Vista Beta 2, but in fact there is d3d10.dll 7.0.6002.23771 inside his package which is Vista SP2 LDR.

I managed to successfuly use Vista's native d3d10.dll with my WineD3D build by writing a stub function for d3d10core.dll that native d3d10 required. Of course I wanted to use latest compatible native version of d3d10.dll which was taken from Vista LDR update (this trick should  be added to Winetricks). And after all I kindly presented my WineD3D build to BlackWingCat for his Win2K KernelEx because I am excited of his incredible work.

See this post

And now I communicate with BlackWingCat personally and we are both interested in bringing DX10/11 to Windows 2000/XP/2003/ReactOS. So this project is WIP and mostly depends of official WineD3D developement and it is too early to advertise it because it is still unreliable, just for simple applications.

3) He said he took wined3d from adolfintel

But unfortunately guys, adolfintel's wined3d build is somewhat wrong, perhaps he incorrectly applied Wine Staging patches so his build cannot run any Direct3D 10/11 application at all. And starting from WineD3D 1.9.8 the GetDC() function was switched to D3DKMT dependency that is unavailable on NT5.x. So there is no point of using adolfintel's wined3d build for XP.

Maybe I will personally contact adolfintel and give him an advice how to correctly apply Staging patches. BTW, those posts about ReactOS files in adolfintel's website are mine, I also took part in ReactOS hardware testing so I am very closely associated with ReactOS team, and if you know ReactOS's Win32 API is based on Wine so I offered in adolfintel's blog to use ReactOS wined3d files as fully Windows XP compatible.

And we need to remember: WineD3D is a property of WineHQ and Crossover and it is open source, so I don't claim anywhere that I ported anything, unlike Dibya claims. Dibya had to be a good guy, I like his sign "Fighting against death of Windows XP" but he shouldn't assign foreign labor to himself and try to justify his false.

Edited by Svyatpro
Link to comment
Share on other sites

DX11.1 PAtch for XP Coming SOON !!
Work In Pogress

What I need to add in following DLL

*Kernel32.dll

AcquireSRWLockExclusive
AcquireSRWLockShared
CreateSemaphoreExW
InitOnceExecuteOnce
InitializeConditionVariable
InitializeSRWLock
InterlockedCompareExchange64
ReleaseSRWLockExclusive
ReleaseSRWLockShared
SleepConditionVariableCS
WakeConditionVariable

InitOnceBeginInitialize
InitOnceComplete

CreateEventExA
InterlockedCompareExchange64

*USER32.DLL

GetDisplayConfigBufferSizes
GetWindowCompositionAttribute
GetWindowDisplayAffinity
IsProcessDPIAware
QueryDisplayConfig
SetProcessDPIAware
SetWindowDisplayAffinity

IsProcessDPIAware

*NTDLL.DLL

NtFlushProcessWriteBuffers
WinSqmAddToStreamEx
WinSqmIsOptedIn

EtwEventWriteNoRegistration
RtlIsCriticalSectionLockedByThread
 

*ADVAPI32.DLL

AddMandatoryAce
EventRegister
EventUnregister
EventWrite

RegGetValueA

RegGetValueA

*VERSION.DLL

GetFileVersionInfoExW
GetFileVersionInfoSizeExW

*GDI32.DLL

CreateBitmapFromDxSurface
D3DKMTCheckSharedResourceAccess
D3DKMTCreateDCFromMemory
D3DKMTDestroyDCFromMemory

Next thing that i need to get work is to get MSVCRT.DLL and MSVCIRT.DLL of Windows 8.1 or 7 work

I am taking DX Files from Windows6.1-KB2670838-x86.msu

Link to comment
Share on other sites

10 hours ago, Dibya said:

DX11.1 PAtch for XP Coming SOON !!
Work In Pogress

What I need to add in following DLL

[...]

Next thing that i need to get work is to get MSVCRT.DLL and MSVCIRT.DLL of Windows 8.1 or 7 work

I am taking DX Files from Windows6.1-KB2670838-x86.msu

Does that mean you made DX11 work on XP by backporting functions, without WineD3D?

Link to comment
Share on other sites

Quote

DX11.1 PAtch for XP Coming SOON !!
Work In Pogress

What I need to add in following DLL

[...]

Next thing that i need to get work is to get MSVCRT.DLL and MSVCIRT.DLL of Windows 8.1 or 7 work

I am taking DX Files from Windows6.1-KB2670838-x86.msu

How naive, this is futile because WDDM driver should be backported. XPDM driver cannot recognize sm4/sm5 opcodes for direct3d . But even if he will really backport WDDM driver (I am very doubt of it) he will at least lose GDI/GDIPLUS HW accel on which XP's interface relies. 

The best solution to implement DX10/11 for XP is DX to OGL wrapper at this moment. WineD3D is the most suitable for now. And it doesn't concern me much, because it will certainly be implemented soon, this is just a question of time. Vulkan support for XP mostly concerns me, I hoped that NVIDIA would implement Vulkan support in their new drivers, but they didn't. WE NEED TO "ATTACK" NVIDIA TO MAKE THEM BRING VULKAN SUPPORT FOR XP AS THEY PROMISED! : P

Link to comment
Share on other sites

@Svyatpro @FranceBB @greenhillmaniac

We have really atleast require few thousands of users to force NVDia , Amd , Intel to make XP/2k3 Drivers.

Please help me in  this matter.

Even we can port WDDM 1.1 that cause some problem as we need to add sum function to HAL/KERNEL (Optimizing this function is hell tough) to Run win7 Driver.

DWM will be next biggest obstacle. Still Tring! My VM Got BSOD with above function

1 hour ago, FranceBB said:

Uhm... We could organise something with other forums as well. Let's say a petition or a topic in the official NVIDIA forum? How about that?

really we have to manage by posting in hardware manufaturers forum

Link to comment
Share on other sites

I am telling a story of severe problem caused by a goverment office near my house by upgrading XP and Server 2003 to Server 2012 & 8.1.

After onemonth they again downgraded to XP & 2k3. Infact Upgrade slowed down the productivity of pc

Client Pcs are having i3 3rd generation with 4gb ram running XP pro sp3 where servers are having  Xeon 4th Generation with 32GB Ram running 2k3 Enterprize sp2.

I donot thing this bad pcs.

 Microsoft is adding only pure crap/junk in newer versions  more to slowdown miserably.

Hardware makers are forcing us to move to crap.

They are forcing users , now time for users to force them.

XP and 2k3 are best of all time ! Let them rule forever.

Although it is tough to configure 2k3 as compare to srv2008 but performance of 2k3 is very high.

Some major hardware makers forum :-

https://forums.geforce.com/

https://community.amd.com/community/support-forums

https://communities.intel.com/community/tech

Link to comment
Share on other sites

It could be very useful if you would post a petition or just open a thread at least at GeForce forums about Vukan support for XP. I think you should do this only for NVIDIA because AMD and Intel abandoned XP users long time ago and IMO their drivers quality is a crap.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...