# Tweaks

Block process priority class | BLOCKPRIORITYCLASS | Blocks a process's attempts to change its own priority class. Old fullscreen games may use this trick to get 100% CPU power dedicated to them, but on modern OSes and windowed environments this could be a bad idea, interfering with other operations and overheating the processor for no reason.
Set single core process affinity | SINGLEPROCAFFINITY | Some games are not properly synchronized to run on physically separate multiple core CPUs, or simply don't properly handle powerful CPUs. This option sets the program's core affinity so that the program is run by a single core (the first one).
Set last core affinity | USELASTCORE | Same as SINGLEPROCAFFINITY, but picks the last CPU core.
Limit available resources | LIMITRESOURCES | Causes the query for available resources (RAM, hard disk space, and so on) to return a limited value: some old games can't handle a very big integer number and see it as a negative value, refusing to start.
Disable performance counter | NOPERFCOUNTER | Since performance metrics hardware is not mandatory on a PC, this flag disables the GetPerfCounter() performance metrics API, simulating an unsupported condition. Usually, in this condition the software should rely on other performance measurement metrics that are more conveniently manipulated by DxWnd timing hooks. It should be set when, despite the time acceleration feature, the program doesn't seem to behave according to the imposed speed ratio.
Bypass font unsupported api | FONTBYPASS | Some games may attempt to manage old font styles that were present by default on legacy platforms and are no longer supported. This flag simulates a success operation to let the program continue. Of course, the font will be wrong, but Windows will approximate the choice with the most similar available font.
Replace privileged opcodes | REPLACEPRIVOPS | Real multitasking OSes (from Windows NT onward) forbid applications from using privileged instructions that directly manipulate the hardware, like the IN opcode. Running a program with such opcodes would result in a program exception on modern systems. This option scans the program code segment at startup and replaces all detected privileged operations with NOP (no operation) instructions. Since these opcodes are often dedicated to interactions with sound hardware, the program will likely work with the possible side effect of some audio issues. Use this flag for games like Ubik.
Suppress IME | SUPPRESSIME | The flag tries to suppress IME windows. This feature is not yet fully functional.
Handle exceptions | HANDLEEXCEPTIONS | Setting this flag causes DxWnd to set its own exception handler that tries (often successfully) to fix several common exceptions, such as the divide by zero exception in old games that were trying to calculate the CPU speed.
Diablo tweak | DIABLOTWEAK | A flag that seems to improve Blizzard's "Diablo" compatibility. It should not be used for other games and will cease to be supported as soon as a more general tweak is discovered.
Intercept Imagehlp.dll | NOIMAGEHLP | Intercept imagehlp.dll unsupported calls, returning a clean error condition so that the program doesn't crash. One notable game that needs this flag is The Fifth Element.
EA Sports hack | EASPORTSHACK | Intercept and neutralize some of the internal hooks usually set by "EA Sports" games, and possibly other titles as well.
Reserve legacy memory segments | LEGACYALLOC | Old 16-bit programs for Windows 95 and 98 relied on the availability of memory from address 0x4000000 to 0x8FFFFFF, even though they never explicitly allocated it. Recent OSes don't guarantee this memory availability. This flag, combined with DLL injection, reserves memory in this range when the program starts up, before that memory can be used for other purposes.
Disable Max Windowed Mode | DISABLEMAXWINMODE | Invoke DirectDraw SetAppCompatData(12,0) to set the DisableMaxWindowedMode.
Disable "disable Alt-Tab" | DISABLEDISABLEALTTAB | Disable the compatibility patches that disable the Alt-Tab key combination to avoid window switching, along with other similar key combinations. Usually, programs hooked by DxWnd can afford window switching with no impact, either by default or by setting the UNNOTIFY flag.
Win7 color fix | COLORFIX | As described in a DirectDraw hack, this flag fixes a color problem that Windows 7 has with 8BPP palettized modes. It only has an effect when the screen is actually set to an 8BPP color depth, which is now very rare.
Fix GlobalUnlock | FIXGLOBALUNLOCK | Fixes a reported problem of the 16-bit GlobalUnock() API's 32-bit port. In some cases, it never returns the expected value, causing game crashes or endless loops.
Fix FreeLibrary | FIXFREELIBRARY | Fix FreeLibrary, simulating a return code of 0 (error) when attempting to free an unallocated module as Windows 95 and 98 would. Use this flag to fix the endless loop problem in "Heavy Gear" version 1.2.