---------------------------------------------------------------------------------------

    Windows Interlace Patcher - for Windows 7/8/8.1/10

    by Calamity - November 2017 - March 2018

    for further documentation, visit: http://geedorah.com/eiusdemmodi/

---------------------------------------------------------------------------------------

WARNING!: THIS SOFTWARE IS EXPERIMENTAL. IT PATCHES A CRITICAL KERNEL DRIVER. USE AT YOUR
OWN RISK. THIS TOOL REQUIRES TEST MODE.*

*Test Mode is required as long as patched drivers are in use. This tool patches a system
kernel driver, thus Test Mode is required, otherwise your system won't boot. The only side
effect of Test Mode is a watermark on the right lower corner of your desktop. Well, that,
and possibly a reduced security against rootkit viruses and such. If you're using this tool
you're assumed to be a competent user. DO NOT attempt to disable Test Mode manually after
patching your system or you're guaranteed to end up in a BSOD loop on restart. However,
it's safe to disable Test Mode once you unpatch your system.


Overview
--------

Windows Interlace Patcher is an experimental tool designed to fix an issue that exists in
all versions of Windows (probably since Vista) affecting interlaced video modes.

The most notable effect of this issue is applications (e.g. emulators) running at halved
speed when an interlaced video mode is in use and v-sync is enabled. Another typical effect
is Windows desktop animations looking choppy.

This issue doesn't affect all systems however. It seems to be dependent of your particular
hardware configuration. Systems with AMD pre HD-5000 video cards are known to always suffer
from this issue. On the other hand, AMD HD-5000 and newer video cards are seemingly free
of problems, although there is some evidence of slowdown issues with apps that run in
non-exclusive full screen mode (thus affected by desktop compositing).

Therefore, it's up to you to decide whether your system is affected and so it's worth to use
this software.

There have been previous workarounds to this issue, namely:

- Using positive sync polarity (pre HD-5000 cards). This magically fixes all problems, but
  you need an external sync converter (e.g. UMSA), as all TV sets and most arcade monitors
  expect negative sync.

- Disabling desktop compositing. This fixes choppy Windows animations and slowdowns on
  non-exclusive full screen apps. But v-synced full screen apps are still affected.

- Using direct v-sync (i.e. frame delay) in GroovyMAME. This works but it's specific to
  GroovyMAME. Besides it can cause static tearing for older cards, exactly those which
  are affected: pre HD-5000 ones.

- Using Windows XP.

This is the first fix that attempts to cover all situations.

It's important to note that this is actually a Windows issue. It is not a bug in AMD's or
anyone else's drivers. We need to patch Windows itself in order to fix it. Specifically,
the culprit file is dxgmms1.sys.

This tool is not part of CRT Emudriver. It can be used with or without CRT Emudriver, and
is not targeted specifically at AMD cards.

This tool doesn't fix the issue with interlaced modes being reported with a halved refresh
by the operating system.


Usage
-----

Windows Interlace Patcher is quite simple to use. Just launch the app, and click on accept
when the warning message is shown.

If your kernel version is known by the patcher, it'll show a message like this: 
"Version 6.3.9600.18662 found! Do you want to patch your system?"

Click on accept.

Now, in case your system is not in Test Mode yet (if you're using CRT Emudriver, it'll
certainly be already enabled), you'll be prompted with a request to enable to enable
"TESTSIGNING".

Click on accept, reboot and you're done.


If you ever want to revert the patch, just run the installer again. It will prompt:
"Your system is already patched. Do you want to revert the patch?

Again, click on accept and restart your system.


If your particular kernel version is unknown to the program, it will prompt:
"Binary version not supported."

If this was the case, please send the dxgmms1.sys file you'll find in your Windows
directory (x:\windows\system32\drivers), to calamity15khz at gmail dot com. Hopefully it
will be added to a future version of the program.


Acknowledgements
----------------

Special thanks to Haynor666 from BYOAC for helping me testing this tool in lots of Windows
versions.


Version history
---------------

- v1.1 - March 2018
    - Added binaries 6.1.7600.16748, 6.1.7601.18126 (Ian Gander, Sean Skroht, Jesús García)

- v1.0 - November 2017
    - First version released.


