Windows 8 build 7978

Windows 8 build 7978 is a build of Windows 8, which was uploaded on 9 May 2021. It is the last build to feature the boot screen used in Windows 7 and the last to utilize the Windows Classic visual style in the Preinstallation Environment.

Redpill
Redlock can be used to unlock all of the Redpill levels on this build, including the Start screen.

The design of the Start screen tile has been changed, and as such no longer features a colored background that is based on the application's icon. A dark aqua background has been introduced in place of the previous functionality.

Advanced Vector Extensions CPU bug
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.

This problem can also present itself as three bugchecks occurring one after the other, with different error codes overwriting each other on the screen.

Setup
This build must be installed on either an IDE or a SATA hard drive as SCSI disk devices will not be detected properly.

Hardware

 * Some graphics drivers may present graphical artifacts such as window borders being displayed only or screen flickering while moving the cursor.
 * On some devices, the video driver may not be able to present any graphics after booting into the operating system. Rebooting may help resolve this issue.
 * This build incorporates a USB 3.0 driver that is not compatible with some USB controllers.

Aero
This build appears to have a slightly broken Windows Aero theme, with only the top portion of the window frame using the blur effect, leaving the side borders transparent.

Behavior in Starter and Home Basic editions
This build automatically enables Aero Glass transparency after installing the Starter and Home Basic SKUs, despite product policies limiting usage of such effects. Changing the current visual style over to a different one (e.g.: Windows Basic) will disable glass effects.

Miscellaneous

 * On some devices, opening either Windows Photo Viewer or Internet Explorer results in a  bugcheck. This can usually be fixed by using the Windows Basic theme, or on some machines, by installing a dedicated graphics driver.

Compiler
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
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 A042:

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:

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

VMware Workstation
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:

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.