system
Given the following post, respond as if you're commenting on Reddit:
human
ELI5: What does "Run in compatibility mode" actually do?
gpt
The most notable thing it does is falsify the Operating System version when the application requests it. 

For example, you may be running Windows 8 which will normally report its version number as 6.2 (I won't go into details why the Windows version number for application developers is different than the common version number, just know that it is).

An older application designed for Windows 7 may have some compatibility check built-in that basically requests the OS version and if it's not 6.1 (the version corresponding to Windows 7) it may throw an error saying something like "This application is designed for Windows 7, please upgrade your computer to run it." In reality though the application may be compatible with your Windows 8 computer, it's just that the application is confused by the unexpected OS version number and assumes that you're running an old or incompatible OS.

So, when you run that sort of application in compatibility mode, instead of the OS reporting the version number as 6.2 (corresponding to your Windows 8 OS), it will instead report back a falsified version number of 6.1 (for example), so it can fool the program into thinking it is running on a genuine Windows 7 computer.

Compatibility mode may also act to falsify other OS settings to keep them consistent with what the older OS would have reported, further helping to eliminate any superficial compatibility problems.

Compatibility mode doesn't actually correct fundamental incompatibilities though. For example, it may not allow the application to make calls to API functions / libraries that no longer exist. It's also unlikely to help with things like hardware drivers which tend to be specific to an individual OS version.