Windows 8 build 7985 (fbl_core1_kernel_cptx.110419-1745)

Build of Windows 8
OS family
Timebomb2012-03-15 (+331 days)
Works in

Windows 8 build 7985 (fbl_core1_kernel_cptx.110419-1745) is a Milestone 3 build of Windows 8, which was shared on 28 June 2022. This build features a new wallpaper with an updated wordoku puzzle. It was compiled 15 days earlier than the Computex 2011 build.

Redpill[edit | edit source]

Continuing on with the evolution of Metro starting with build 7978, the unlocked features in this build are a middle ground between the early Milestone 2 Metro of builds 7927 to 7963 and the closer to final looks of builds 8032 and 8056. The Start screen now has the "Start" header, along with the Other Programs UI being replaced with the Applications list. The Charms bar now has a clock appear along with it, along with the Settings charm being redesigned, adding some non-functional toggles for the Power, keyboard, and a placeholder toggle called "VanUI", possibly standing for View Active Networks.

The Aero theme has also been updated to feature a flatter design, resembling the Windows Basic of this build. In this build, it is already possible to change the accent color of the start screen, however there are only two colors available. To do this, open regedit, go to HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Accent and create a DWORD named ColorSet and set its value to 1. When you logoff and logon again, the start screen will be a different blue gradient.

Changes[edit | edit source]

  • The Windows Preinstallation Environment of this build is the first to use the Windows Basic theme.

Bugs[edit | edit source]

  • It appears that it is possible to "uninstall" the desktop. However, clicking Uninstall does nothing.
  • The Task Manager shows erratic values for the network usage.
  • This build has issues installing on SCSI drives, and needs to be installed on an IDE drive.

Advanced Vector Extensions CPU bug[edit | edit source]

This build will not boot on some CPUs with the Advanced Vector Extensions (AVX) instruction set due to a bug where a CPU triple fault occurs immediately after the boot screen is first displayed. A workaround is discussed later in the article.

Compiler[edit | edit source]

This is one of the first builds to be compiled using a new compiler. However, the problems surrounding it at that time resulted in the build becoming unbootable on certain hardware, as the boot loader does not properly function on modern x86 CPUs, namely Intel processors with the AVX instruction set and a select number of AMD CPUs. As a result, a CPU triple fault occurs resulting in either a crash on a hypervisor or a reboot on real hardware.

Most of the bugs found in this build are a side effect of the new compiler.

Patching winload.exe to run on Intel processors with AVX[edit | edit source]

In order to properly enable SSE instructions for machines using Intel processor with AVX, the 9th bit in Control Register 4 (CR4) must be turned on. The following code is executed and is located in winload.exe at offset A137:

mov     eax, cr4        ; 0f20e0
or      eax, 20h        ; 83c820        -- Turn on 5th bit, PAE (Physical Address Extension)
mov     cr4, eax        ; 0f22e0        -- Store it in CR4
mov     eax, cr0        ; 0f20c0
or      eax, 80000000h  ; 0d00000080    -- Enable paging
mov     cr0, eax        ; 0f22c0

By default the following bits are set in CR0: Protected Mode (PE) (0x00000001), Monitor co-processor (MP) (0x00000002) and Extension type (ET) (0x00000010), with no bits in CR4 set initially, so the need to turn on the 9th SSE bit (i.e. OR with 0x600) should be done, but due to limitation in this piece of code, a rewriting needs to be done and the following approach may be used instead:

mov     eax,620h        ; b820060000
mov     cr4,eax         ; 0f22e0
mov     eax,80000013h   ; b813000080
mov     cr0,eax         ; 0f22c0
nop                     ; 90
nop                     ; 90
nop                     ; 90
nop                     ; 90

As a disclaimer, patching winload.exe with these changes will invalidate integrity checks and thus requires Test Mode to be enabled (by setting NoIntegrityChecks in the BCD to on) in order to boot with the patched winload.exe, as well as ownership of the file in both %systemroot%\System32 and %systemroot%\System32\Boot need to be altered in case file replacement was not possible.

Compatibility[edit | edit source]

VMware Workstation[edit | edit source]

For another workaround on the Intel SSE bug that does not involve patching and disabling security checks, the compatibility level must be set to version 7.x or lower in order to boot this build. In addition, the following block of code must be added to the VMX (virtual machine configuration) file in order to allow this build to boot on modern Intel CPUs:

cpuid.0.ebx = "0110:1000:0111:0100:0111:0101:0100:0001"
cpuid.0.ecx = "0100:0100:0100:1101:0100:0001:0110:0011"
cpuid.0.edx = "0110:1001:0111:0100:0110:1110:0110:0101"
cpuid.1.eax = "0000:0000:0000:0001:0000:0110:0111:0001"

The above configuration is mostly not required if the host machine has an AMD processor, and as such only requires the compatibility version to be changed.

Gallery[edit | edit source]