sirp Posted January 1, 2015 Share Posted January 1, 2015 CPU Core Faker aka Dual Core Fix is a DLL that overrides a few kernel32 functions to give the impression to thelibrary user that the system has a different number of CPU cores. It was originally developed for Far Cry 4, whichwon't load if executed on a CPU with less than four logical cores.This fix is really generic and could work with other games, there is no FC4 specific code.I've uploaded the source code to CodePlex: https://cpucorefaker.codeplex.com/There you can find a brief explanation, here are the returned values from Dual Core Fix v1/v2/v3:API function / Original (DC) / DC Fix v3 / DC Fix v2 / DC Fix v1---------------------------------------------------------------------[GetSystemInfo]> dwNumberOfProcessors / 2 / 8 / 4 / 8> dwActiveProcessorMask / 3 / 255 / unmodified / unmodified---------------------------------------------------------------------[setThreadAffinityMask]mask > actual mak / (1,2,3) / 3 (actual max) / 3 / 3mask <= actual max / mask / 3 / mask / 3---------------------------------------------------------------------[GetLogicalProcessorInformation]As described in "documentation"---------------------------------------------------------------------The code contains some C++11 features so compile with VS2013. You'll also need EasyHook. 2 Link to comment
evlncrn8 Posted January 2, 2015 Share Posted January 2, 2015 doesnt handle cpuid opcode though? Link to comment
Conquest Posted January 2, 2015 Share Posted January 2, 2015 doesnt handle cpuid opcode though? Its a user level(ring 3) hook . To change behavior of "opcode"s you will need virtualization support and some form of kernel hooks. Check paravirtualization topics if you are interested. 1 Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now