Windows 8 CPU Feature Patch (Bypass Windows 8 CPU feature checks)

Discussion in 'MDL Projects and Applications' started by Jan1, Aug 3, 2013.

  1. darkon11

    darkon11 MDL Novice

    Apr 10, 2009
    32
    0
    0
    Already did all of this.
    I'd like to receive answer from the guy who made this software.
     
  2. Jan1

    Jan1 MDL Novice

    May 20, 2010
    48
    257
    0
    Patching Windows 8.1 x64 RTM did not work because at the time I made v1.4 only Windows 8.1 Preview was available. It's fixed in v1.5.
     
  3. GlockMane

    GlockMane MDL Novice

    Aug 16, 2011
    20
    0
    0
    I'm getting this 0x000000A error too when I try to boot normaly! I have a Dell M60 Notebook with Pentium M (no NX but SSE2, no PAE) and I did the PAE patch and "Remove winload patchguard x86" (winload.exe).. NoIntegrityChecks is set yes.. Please help :confused:
     
  4. digitaldata

    digitaldata MDL Novice

    Oct 29, 2013
    2
    0
    0
    Patch on existing Windows 8.1 Installation?

    Hello community,
    has anyone ever tried to apply the patch for an existing installation of Windows 8.1?

    Background:
    I have a 64bit Windows 8.1 installation as a template (Image-File) with many Applications and want to distribute it on the PCs on my network.
    The image runs without problems on newer PCs.
    The image does not run on older PCs, it probably lacks a CPU feature (CompareExchange128).

    Can I use the tool in this situation?

    Thank you!
     
  5. Tito

    Tito Super Mod / Adviser
    Staff Member

    Nov 30, 2009
    18,681
    18,589
    340
    Not yet Forget that v1.5 is released.
    :vertag:

     
  6. Supern00b

    Supern00b MDL Addicted

    Dec 30, 2010
    728
    540
    30
    Are you sure Tito?
    Aren't we already on 1.5?

    Patches have been updated recently....

    Cheers.
     
  7. digitaldata

    digitaldata MDL Novice

    Oct 29, 2013
    2
    0
    0
    I already used V1.5.7. (downloaded yesterday).

    Modifying the ntoskrnl.exe did not resolve the Problem.

    Thanks!
     
  8. Jan1

    Jan1 MDL Novice

    May 20, 2010
    48
    257
    0
    Then you're out of luck since the unsupported instruction is used somewhere (maybe in a driver).
     
  9. joakim

    joakim MDL Novice

    Dec 30, 2009
    21
    6
    0
    #89 joakim, Oct 30, 2013
    Last edited by a moderator: Apr 20, 2017
    Hi

    I am currently running some tests on modified kernels, doing some debugging, and became curious how you solved it in your tool. Nice tool by the way. Point is I can't get it to work as I end in 0xc0000221. I've tried with and without renamed winload.exe/ntoskrnl.exe (as specified by PATH and KERNEL), but still the same. My initial tests are on Windows 8.1 x86 (6.3.9600), putting x64 on hold for the moment. Is the tool even supposed to work on this version of Windows? Or maybe I am doing something wrong.

    On a side note I could add that I am able to solve it by patching 2 more instructions in winload.exe. It is 2 "js" instructions at:

    Code:
    OslpLoadAllModules+0x2D0 (4062ED)
    OslpLoadAllModules+0x2E8 (406305)
    
     
  10. joakim

    joakim MDL Novice

    Dec 30, 2009
    21
    6
    0
    #90 joakim, Oct 30, 2013
    Last edited by a moderator: Apr 20, 2017
    Just adding another few cents to the thread. If you want to get rid of the requirement of NOINTEGRITYCHECKS in BCD store, you can patch these locations as well:

    winload.exe
    Code:
    435740
    435746
    43574F
    
    bootmgr.exe
    Code:
    40DB03 or 40DB0E
    41A980
    41A986
    41A98F
    
    Still on the same version as described in previous post.
     
  11. vze2mp9g

    vze2mp9g MDL Addicted

    Oct 13, 2012
    660
    117
    30
    I might have an easier way to change drive letters. Why not just use DISKPART [Enter]
    LIST VOLUME
    find the the volume ### you want to change the drive letter
    then type
    SELECT VOLUME [4] (or what ever drive you want to change the letter of)
    then type
    ASSIGN LETTER=Z (or what ever letter you want to assign the drive to)

    I know for myself, navigating through the
    "Control Panel\All Control Panel Items\Administrative Tools\Computer Management\Disk Management"

    I know, I'm lazy. I'm better at typing than going threw menus. This is for Windows 7 Ultimate SP1 [32-bit].

    If I missed the subject matter, I will apologize for my interruption. :worthy:

    Correct me if I'm wrong, as I was reading this thread, it seems now it's possible to install Windows 8 or Windows 8.1 on a Pentium 4 without NX but SSE2, no PAE? If is possible to install Windows 8/8.1 how could I do a fresh install of Windows 8/8.1? This is my CPU info Socket 478 for Intel(R) Pentium(R) 4 (Northwood) 3.00GHz and here is the Coreinfo.exe output (part of Sysinternals Suite):


    Intel(R) Pentium(R) 4 CPU 3.00GHz
    x86 Family 15 Model 2 Stepping 9, GenuineIntel
    HTT * Hyperthreading enabled
    HYPERVISOR - Hypervisor is present
    VMX - Supports Intel hardware-assisted virtualization
    SVM - Supports AMD hardware-assisted virtualization
    EM64T - Supports 64-bit mode

    SMX - Supports Intel trusted execution
    SKINIT - Supports AMD SKINIT

    NX - Supports no-execute page protection
    SMEP - Supports Supervisor Mode Execution Prevention
    SMAP - Supports Supervisor Mode Access Prevention
    PAGE1GB - Supports 1 GB large pages
    PAE * Supports > 32-bit physical addresses
    PAT * Supports Page Attribute Table
    PSE * Supports 4 MB pages
    PSE36 * Supports > 32-bit address 4 MB pages
    PGE * Supports global bit in page tables
    SS * Supports bus snooping for cache operations
    VME * Supports Virtual-8086 mode
    RDWRFSGSBASE - Supports direct GS/FS base access

    FPU * Implements i387 floating point instructions
    MMX * Supports MMX instruction set
    MMXEXT - Implements AMD MMX extensions
    3DNOW - Supports 3DNow! instructions
    3DNOWEXT - Supports 3DNow! extension instructions
    SSE * Supports Streaming SIMD Extensions
    SSE2 * Supports Streaming SIMD Extensions 2
    SSE3 - Supports Streaming SIMD Extensions 3
    SSSE3 - Supports Supplemental SIMD Extensions 3
    SSE4.1 - Supports Streaming SIMD Extensions 4.1
    SSE4.2 - Supports Streaming SIMD Extensions 4.2

    AES - Supports AES extensions
    AVX - Supports AVX intruction extensions
    FMA - Supports FMA extensions using YMM state
    MSR * Implements RDMSR/WRMSR instructions
    MTRR * Supports Memory Type Range Registers
    XSAVE - Supports XSAVE/XRSTOR instructions
    OSXSAVE - Supports XSETBV/XGETBV instructions
    RDRAND - Supports RDRAND instruction
    RDSEED - Supports RDSEED instruction

    CMOV * Supports CMOVcc instruction
    CLFSH * Supports CLFLUSH instruction
    CX8 * Supports compare and exchange 8-byte instructions
    CX16 - Supports CMPXCHG16B instruction
    BMI1 - Supports bit manipulation extensions 1
    BMI2 - Supports bit maniuplation extensions 2
    ADX - Supports ADCX/ADOX instructions
    DCA - Supports prefetch from memory-mapped device
    F16C - Supports half-precision instruction
    FXSR * Supports FXSAVE/FXSTOR instructions
    FFXSR - Supports optimized FXSAVE/FSRSTOR instruction
    MONITOR - Supports MONITOR and MWAIT instructions
    MOVBE - Supports MOVBE instruction
    ERMSB - Supports Enhanced REP MOVSB/STOSB
    PCLULDQ - Supports PCLMULDQ instruction
    POPCNT - Supports POPCNT instruction
    SEP * Supports fast system call instructions
    LAHF-SAHF - Supports LAHF/SAHF instructions in 64-bit mode
    HLE - Supports Hardware Lock Elision instructions
    RTM - Supports Restricted Transactional Memory instructions

    DE * Supports I/O breakpoints including CR4.DE
    DTES64 - Can write history of 64-bit branch addresses
    DS * Implements memory-resident debug buffer
    DS-CPL - Supports Debug Store feature with CPL
    PCID - Supports PCIDs and settable CR4.PCIDE
    INVPCID - Supports INVPCID instruction
    PDCM - Supports Performance Capabilities MSR
    RDTSCP - Supports RDTSCP instruction
    TSC * Supports RDTSC instruction
    TSC-DEADLINE - Local APIC supports one-shot deadline timer
    TSC-INVARIANT - TSC runs at constant rate
    xTPR * Supports disabling task priority messages

    EIST - Supports Enhanced Intel Speedstep
    ACPI * Implements MSR for power management
    TM * Implements thermal monitor circuitry
    TM2 - Implements Thermal Monitor 2 control
    APIC * Implements software-accessible local APIC
    x2APIC - Supports x2APIC

    CNXT-ID * L1 data cache mode adaptive or BIOS

    MCE * Supports Machine Check, INT18 and CR4.MCE
    MCA * Implements Machine Check Architecture
    PBE * Supports use of FERR#/PBE# pin

    PSN - Implements 96-bit processor serial number

    PREFETCHW - Supports PREFETCHW instruction

    Logical to Physical Processor Map:
    ** Physical Processor 0 (Hyperthreaded)

    Logical Processor to Socket Map:
    ** Socket 0

    Logical Processor to NUMA Node Map:
    ** NUMA Node 0

    Logical Processor to Cache Map:

    Logical Processor to Group Map:
    ** Group 0


    I would really like to install Windows 8/8.1. I've been waiting for this "fix", "patch" for some time now. Everytime I attempt to install Windows 8/8.1 I receive the same ERROR 0xc0000221. Any assistance on this matter would really be appreciated. :)
    Thank you. :worthy:
     
  12. darkon11

    darkon11 MDL Novice

    Apr 10, 2009
    32
    0
    0
    I'm using 1.5 now it still says "patch location not found".
    Since it looks like that the changed files are winload.exe, ntoskrnl.exe & hal.dll can you post the binary changes you made.
    Thanks
     
  13. beastmichel1

    beastmichel1 MDL Novice

    Nov 3, 2013
    1
    1
    0
    How to use patch

    Dear all,

    I am a little bit lost . I have a pentium 4 and i followed Jan1 manual but at the end I miss something.
    When I open the tools V.1.5 I want to remove pae check but i do not know how to apply the patch.
    It opens windows Explorer and I do not know the next step
    the same for remove sse2 eco,
    pleas help .i need somo more sleep....:eek:
     
  14. mitsos

    mitsos MDL Junior Member

    Nov 10, 2012
    65
    11
    0
    #94 mitsos, Nov 21, 2013
    Last edited by a moderator: Apr 20, 2017
    Succesfully installed windows 8.1 Enterprise 32bits on P4 2.8gb HT system with 2gigs of ram.
    Everything went good except command, after booting to w8.1,
    Code:
    bcdedit /set {current} RecoveryEnabled No
    administrator command prompt on w8.1 said that was an invalid-unknown command.

    Searched for something like that on command info, without succes.
    Then updates downloaded en after instalation system falls to recovery and then error.
    Reapplied the patch with succes, succesfully runed
    Code:
    bcdedit /set {default} NoIntegrityChecks Yes 
    but on reboot falls again to recovery and error.

    Command
    Code:
    bcdedit /set {current} RecoveryEnabled No
    
    booting from windows 7 disk also is not working.

    It seems to me that the problem is to disable the recovery mode, but how?
    Anybody has a clue? or am i doing something wrong?

    Edit:
    I did the whole installation again, i created 350mb system partition
    and direct after first booting to w8.1 i elevated a prompt command
    with shift plus f10 buttoms, gave the command bcdedit /set {current} RecoveryEnabled No
    and it seems succeded disable the recovery mode.

    Now i download again updates, lets see what will happen after patching again the files...
    Continuing....

    Edit 2:

    YES, applying the patches after windows updates, and after several errors using the patch,
    succeded to boot again. System is uptodated and activated together with office 2013,
    runs smooth and stable. Seems to me smother then on windows 7.

    All credits to Jan1 who made all these possible...
     
  15. vash32

    vash32 MDL Novice

    Nov 22, 2013
    1
    0
    0
    Great work on the patch, and they say it needs it. (lol, just trying to make people buy newer hardware they not need and what not.)
    I'm going to try this what on my 2007 PC, using a P4 3.8Ghz, 3Gb RAM and see if it works well on 64-bit as I can do 32 np. (I think as it say it does have all but the other two that's only in 64-bit)

    Edit:
    Only used two patch for 8.1 Pro and worked great. I'm also updated, it funny how the 32bit and 64bit are not the same. (Not Bit part)
     
  16. rochdale

    rochdale MDL Novice

    Jan 24, 2013
    9
    0
    0
    hi falkee

    tried this as per your instructions using windows 7, it worked like a charm.

    now using windows 8 9200 rtm with a p4 2.66 and 2gb of memory.

    good instructions, well done and thanks.

    rochdale
     
  17. mitsos

    mitsos MDL Junior Member

    Nov 10, 2012
    65
    11
    0
    With P4 3.8ghz and 3gb ram, 32bits w8.1 sould be running smooth like butter.
    My old p4 2.8, with at the moment 2.5gb ram and clean w8.1 instalation,
    seems to run better then a recent w8 friends laptop with all that preinstalled crap...:biggrin:
     
  18. radixx11

    radixx11 MDL Novice

    Nov 27, 2013
    16
    3
    0
    Hi!

    First, i whant to thanks to Jan1 to make this great tool. Also thanks to all the community to share your



    knowledge to make this possible.

    I successfully installed Windows 8.1 Pro VL on my Pentium 4 2.8Ghz (no NX) - 1GB RAM - NVidia FX5200
    and works like a charm! (i used windows vista/7 drivers without problems)

    One more time, THANKS! :worthy:
     
  19. angelnonis

    angelnonis MDL Novice

    Sep 28, 2012
    1
    0
    0
    Hi guys!
    Does any one made any iso of windows 8.1 x86 ready for installation on old computers and upload it?
     
  20. Jan1

    Jan1 MDL Novice

    May 20, 2010
    48
    257
    0
    #100 Jan1, Dec 6, 2013
    Last edited by a moderator: Apr 20, 2017
    (OP)