; Example configuration for DXGL ; Place in the same folder as a game or application and rename to dxgl.ini ; in order to pre-set profile settings for the game or application. ; Remove or comment out options to allow the registry settings to be used. [system] ; NoWriteRegistry - Boolean ; If true, do not write a profile or settings to the user's registry. ; Set to true if distributing the DXGL ddraw.dll with a game or application. ; Default is false so ensure the following line is set to avoid writing to ; the end user's registry. NoWriteRegistry=true ; OverrideDefaults - Boolean ; If true, settings not set in the .ini file will not be read from the ; settings in the Global section of the user's registry but instead will use ; the default settings. Users may still override these settings with a profile ; in DXGL Config. If NoWriteRegistry is false, a profile will still be ; created if it does not exist. ; If false, the settings in DXGL Config global section will be used as default. ; Default is false OverrideDefaults=false ; NoOverwrite - Boolean ; If true, DXGL Config will not overwrite the copy of ddraw in the application ; directory. This may be useful for game distribution services such as Steam ; where the game client monitors and can repair the health of the game ; installation. In addition, removing the DXGL Config profile or uninstalling ; the DXGL consumer application will not remove that copy of ddraw.dll. This ; will be enforced, even if the existing copy of ddraw.dll is not DXGL. ; Default is false NoOverwrite=false ; BundledDDrawSHA256 - String ; This field may be used to define the SHA256 checksum of the copy of ddraw.dll ; bundled in the application directory. If DXGL Config detects a copy of ; ddraw.dll matching the SHA256 checksum defined here, it will back up the file ; to ddraw.dll.dxgl-backup and restore it when either the DXGL profile is ; deleted or the DXGL consumer application is uninstalled. The ddraw.dll file ; does not need to be a DXGL version for this to work, as long as a dxgl.ini ; file is in the application directory with the SHA256 checksum of the bundled ; ddraw.dll file. This will be ignored if NoOverwrite is true. ; Default is a zero length string, disabling the backup feature. ;BundledDDrawSHA256= ; NoUninstall - Boolean ; If true, DXGL will not delete the copy of ddraw.dll in the application folder ; when a profile is deleted in DXGL Config or the DXGL consumer application is ; uninstalled. If an existing ddraw.dll was backed up using the ; BundledDDrawSHA256 variable, it will not be restored, and the end-user must ; manually copy back the ddraw.dll.dxgl-backup file. ; Default is false. NoUninstall=false ; Include - String ; If set, DXGL will load the file listed and parse it, much like an "include" ; file. This can allow using multiple configuration files. Please note that ; DXGL will stop parsing the current file and parse the specified file before ; continuing on. This option can be repeated to load multiple files, and ; supports only relative paths. In addition, this option will only load up to ; 16 files deep. ; Installation control options are currently only supported in the root ; configuration file. ; Include options can be in any section of the .ini file, however included ; files must have their own sections. ;Include=dxgl-custom.ini [display] ; ScalingMode - Integer ; Determines the method DXGL will use to scale full screen modes. ; Default is 0 ; The following values are valid: ; 0 - Change display mode to match requested mode. ; 1 - Stretch output to desktop ; 2 - Stretch output to desktop, preserving aspect ratio ; 3 - Center output on desktop ; 4 - Change display mode, stretch if matching mode not found ; 5 - Change display mode, aspect corrected stretch if matching mode not found ; 6 - Change display mode, center if matching mode not found ; 7 - Crop output to desktop, preserving aspect ratio ; 8 - Center output, multiply by custom values ; 9 - Set display to custom resolution and refresh ; 10 - Center output, scale to custom size ScalingMode=0 ; FullscreenWindowMode - Integer ; Determines how DXGL will draw the window for fullscreen modes. ; Some modes will override the scaling mode. ; The following values are valid: ; 0 - Use exclusive fullscreen ; 1 - Use non-exclusive fullscreen, not quite borderless windowed mode ; 2 - Use a non-resizable window ; 3 - Use a resizable window, uses scaler mode, preferably 1, 2, 3, or 7 ; 4 - Use a borderless, non-resizable window, also known as windowed borderless ; 5 - Use a borderless window scaled to the screen FullscreenWindowMode=0 ; ChangeColorDepth - Boolean ; If true, Windows will attempt to change the color depth of the screen. ; This will prevent 8-bit color modes from working correctly in Windows 7 ; or earlier. In Windows 8 or later, a compatibility mode must be set to ; make low color depths work, but in those operating systems 8-bit color ; will work. ; DXGL always performs color depth conversion for DirectDraw internally ; via the OpenGL runtime regardless of the operating system's display mode. ; Default is false and is recommended except in special circumstances. ChangeColorDepth=false ; AllColorDepths - Boolean ; Adds 8, 16, 24, and 32-bit color modes if they are not already ; added to the list of display modes passed to the program. ; Equivalent to setting AddColorDepths to 21. ; Overridden by AddColorDepths. ; Default is true if Windows 8 or higher is detected, false otherwise. AllColorDepths=true ; AddColorDepths - Integer ; (future) Adds additional color modes if they are not already ; added to the list of display modes passed to the program. ; This is a bit-mapped variable, add up the desired color depths from ; the list of values below: ; 1 - Add 8-bit modes ; 2 - Add 15-bit modes ; 4 - Add 16-bit modes ; 8 - Add 24-bit modes ; 16 - Add 32-bit modes ; Default is 21 if Windows 8 or higher is detected, 0 otherwise. ; Adding both 15 and 16 bit modes at the same time may cause ; crashes or undefined behavior in some programs. AddColorDepths=21 ; ExtraModes - Boolean ; Adds additional video modes to the list of resolutions. ; If a display scaling mode is not set and postprocess scaling ; is set to automatic, it will add several low resolution pixel doubled ; video modes. ; Default is true. ; Equivalent to setting AddModes to 7. Overridden by AddModes. ExtraModes=true ; AddModes - Integer ; Adds additional video modes to the list of resolutions. ; This is a bitmapped variable, add up the desired mode lists from ; the list of values below: ; 0 - None ; 1 - Add common low-resolution modes ; 2 - Add less common low-resolution modes ; 4 - Add uncommon standard definition modes ; 8 - Add high definition modes ; 16 - Add QHD to UHD modes. ; 32 - Add over-4K UHD modes. Check GPU specifications before enabling. ; 64 - Add very uncommon resolutions of all dimensions. ; 128 - Add common SVGA modes. Use under Wine if your display driver doesn't ; support modeswitching. ; Default is 1. AddModes=1 ; SortModes - Integer ; Determines whether or not to sort display modes by either ; resolution first or color depth first. This can make in-game ; display mode menus display video modes in increasing order instead ; of potentially in a random assortment. ; The following values are valid: ; 0 - Do not sort. Display modes detected by the system will be listed in ; the order they appear. Display modes added by DXGL will be added at ; the end. ; 1 - Sort video modes, grouping by color depth. ; 2 - Sort video modes, grouping by resolution. ; Default is 0. SortModes=0 ; VSync - Integer ; Determines vertical retrace behavior. ; The following values are currently available: ; 0 - Wait for V-sync when the application requests it. ; 1 - Disables V-sync entirely ; 2 - Waits for V-sync whenever the screen is redrawn. VSync=0 ; CustomResolutionX - Integer ; Width of the custom resolution for the display output for modes 9 and 10. ; Default is 640. CustomResolutionX=640 ; CustomResolutionY - Integer ; Height of the custom resolution for the display output for modes 9 and 10. ; Default is 480; CustomResolutionY=480 ; CustomRefresh - Integer ; Refresh rate for the display output for modes 9 and 10. ; Default is 60. CustomRefresh=60 ; DisplayMultiplierX - Floating point ; Multiplier for the pixel width for display mode 8. ; Default is 1.0. DisplayMultiplierX=1.0 ; DisplayMultiplierY - Floating point ; Multiplier for the pixel height for display mode 8. ; Default is 1.0. DisplayMultiplierY=1.0 ; SingleBufferDevice - Boolean ; If true, creates an OpenGL device without double buffering. This has ; various effects, such as disabling vsync and exclusive fullscreen. ; Default is false SingleBufferDevice=false [scaling] ; ScalingFilter - Integer ; Selects the filter to be used to scale the output image ; Default is 0 ; The following values are valid: ; 0 - Nearest-neighbor stretching ; 1 - Bilinear interpolation ScalingFilter=0 ; BltScale - Integer ; Selects the filter to be used to scale Blt operations. ; Default is 0 ; The following values are valid: ; 0 - Nearest-neighbor stretching ; 1 - Bilinear interpolation ; 2 - Bilinear interpolation, nearest-neighbor color key ; 3 - Bilinear interpolation, sharp color key ; 4 - Bilinear interpolation, soft color key BltScale=0 ; BltThreshold - Integer ; Sets the threshold point for sharp color key scaling. ; 0 will trim the most, 254 will trim the least, and 255 will completely ; disable color keying. ; Default is 127 BltThreshold=127 ; AdjustPrimaryResolution - Integer ; Determines whether or not to resize the buffers used to hold the primary ; buffers if scaling is enabled. Enabling this may cause graphical glitches ; and/or slowdown. ; The following values are valid: ; 0 - Use native primary surface size. Most compatible. ; 1 - Adjust primary surface size to match display. ; 2 - Adjust primary surface to nearest integer multiple of native. ; 3 - Use exact 1.5x scale. ; 4 - Use exact 2x scale. ; 5 - Use exact 2.5x scale. ; 6 - Use exact 3x scale. ; 7 - Use exact 4x scale. ; 8 - Use exact 5x scale. ; 9 - Use exact 6x scale. ; 10 - Use exact 7x scale. ; 11 - Use exact 8x scale. ; 12 - Use custom scale. ; Default is 0. AdjustPrimaryResolution=0 ; PrimaryScaleX - Floating point ; Sets the scaling amount in the X dimension for custom primary ; buffer scaling. ; If zero, negative, or an invalid value, will be interpreted as 1.0 ; Default is 1.0 PrimaryScaleX=1.0 ; PrimaryScaleY - Floating point ; Sets the scaling amount in the Y dimension for custom primary ; buffer scaling. ; If zero, negative, or an invalid value, will be interpreted as 1.0 ; Default is 1.0 PrimaryScaleY=1.0 ; ScreenAspect - Floating point or string ; Sets the aspect ratio of the display output. ; May be entered as a floating point number or as aspect ratio notation. ; Examples would be 1.33333 or 4:3 for a "fullscreen" aspect ratio. ; Or "Default" may be entered to use the default aspect for the selected mode. ; If zero, negative, "Default" or an invalid value, the display will default ; to a 1:1 PAR except on specific low-resolution modes which may use 2:1 or ; 1:2 PAR. ; Default is "Default" ScreenAspect=Default ; DPIScale - Integer ; Overrides Windows DPI scaling on high-DPI modes. ; Has no effect on Windows XP or earlier, or if "Windows XP style DPI Scaling" ; is enabled in Windows, or if the Desktop Window Manager is disabled. ; Setting to 0 allows Windows to control high-DPI scaling, which may cause ; glitches. ; Setting to 1 causes DXGL to use the SetDPIAwareness API on Windows 8.1 or ; higher to set the process as Per-Monitor High DPI Aware, or on Windows Vista ; through 8.0 use the SetProcessDPIAware API to set the process as High DPI ; Aware. If the GUI is initialized before ddraw.dll is loaded, this will have ; no effect. ; Setting to 2 will adjust the Windows Application Compatibility registry ; values to disable Windows High DPI scaling. This may cause your application ; or game to restart as the registry value is set. Use this mode only if ; setting DPIScale to 1 has no effect. ; Default is 1. DPIScale=1 [postprocess] ; PostprocessFilter - Integer ; Selects the filter to use for the postprocess pass. ; (future)If a post processing shader is selected this will be clamped to 1 ; or overridden by the shader metadata. ; This will be ignored if there is no postprocess pass or scaling is 1. ; The following values are valid: ; 0 - Nearest-neighbor stretching ; 1 - Bilinear interpolation PostprocessFilter=0 ; PostprocessScaleX - Floating point ; Scaling in the X direction for the postprocess pass. ; May be overridden by metadata in a postprocess shader. ; If either X or Y are set to 0 or less than 0.25 DXGL will select a scaling ; amount that doubles the width if it is 400 or fewer pixels wide, and doubles ; the lines if the height is 300 or fewer lines. ; Default is 0.0 PostprocessScaleX=0.0 ; PostprocessScaleY - Floating point ; Scaling in the Y direction for the postprocess pass. ; May be overridden by metadata in a postprocess shader. ; If either X or Y are set to 0 or less than 0.25 DXGL will select a scaling ; amount that doubles the width if it is 400 or fewer pixels wide, and doubles ; the lines if the height is 300 or fewer lines. ; Default is 0.0 PostprocessScaleY=0.0 ; EnableShader - Boolean ; (future) If true, uses a custom shader to render the postprocess pass. ; Default is false EnableShader=false ; ShaderFile - String ; (future)Path to a file containing either a GLSL fragment shader or a ; to-be-determined metadata file containing a shader pipeline and certain ; parameters. ; The path can be relative (will search the Shaders subdirectory of the ; install directory and the path where the ddraw.dll implementation has been ; placed) or absolute. ; Default is undefined. ; ShaderFile=example.fs [d3d] ; TextureFilter - Integer ; Texture filtering method for Direct3D draw commands. ; The following values are valid: ; 0 - Use the setting in the Direct3D texture stage state ; 1 - GL_NEAREST (Nearest-neighbor filtering) ; 2 - GL_LINEAR (Bilinear filtering) ; 3 - GL_NEAREST_MIPMAP_NEAREST (Nearest-neighbor with mipmap) ; 4 - GL_NEAREST_MIPMAP_LINEAR (Nearest-neighbor with linear mipmap) ; 5 - GL_LINEAR_MIPMAP_NEAREST (Bilinear with mipmap) ; 6 - GL_LINEAR_MIPMAP_LINEAR (Trilinear filtering) ; Default is 0 TextureFilter=0 ; AnisotropicFiltering - Integer ; (future) Enabled anisotropic filtering to improve display quality ; May cause slowdown on older, low-end graphics cards in some situations. ; The following values are valid, though larger values may be dependent ; on the capabilities of the graphics card: ; 0 - Use the setting in the Direct3D texture stage state ; 1 - Disables anisotropic filtering. ; 2 - Sets anisotropic filtering to 2x. ; 4 - Sets anisotropic filtering to 4x. ; 8 - Sets anisotropic filtering to 8x. ; 16 - Sets anisotropic filtering to 16x. AnisotropicFiltering=0 ; Antialiasing - Hexadecimal integer ; (future) Enables multisample antialiasing. May cause significant ; slowdown, especially on slower graphics cards. ; The following values are valid on all graphics cards: ; 0x0 - Enables antialiasing if requested by the D3D device. ; 0x1 - Disables antialiasing ; For enabling antialiasing, run DXGLCFG to enumerate the available ; antialiasing modes for your graphics card. Then retrieve the value ; from the registry. ; You may also use a number from 0x2 to 0xff to enable standard OpenGL ; multisampling. ; Add 0x10000 to the number to enable the specific antialiasing mode only ; when the application requests it. ; Default is 0x0 Antialiasing=0x0 ; D3DAspect - Integer ; (future)Selects whether or not to adjust the aspect ratio for Direct3D ; content. Also known as widescreen hack. ; Only active if the display scaling is set to "Stretch to screen" ; The following values are valid: ; 0 - Stretches the output to the screen. ; 1 - Expands the viewable area, i.e. hor+. There may be missing geometry ; off-screen. ; 2 - Crops the display to the viewable area. May cut off parts of the game ; graphics. ; Default is 0 D3DAspect=0 ; LowColorRendering - Integer ; Selects whether to increase the color depth when rendering to a ; low color Direct3D surface. ; The following values are valid: ; 0 - Uses the same color depth as requested by the application. ; 1 - Uses a 32-bit texture format. Increases the quality of the game but ; will be downsampled if the surface is accessed directly after rendering. ; Default is 0 LowColorRendering=0 ; EnableDithering - Integer ; Determines when dithering is enabled for Direct3D rendering. ; Note that since modern graphics cards do not natively support dithering it ; is implemented via a pixel shader, and may potentially result in reduced ; performance. ; The following values are valid: ; 0 - Enables dithering when requested by the application except when in a ; true-color mode. ; 1 - Disables dithering at all times. ; 2 - Always enables dithering for low color modes. ; 3 - Enables dithering per application, for all modes. ; 4 - Always enables dithering, for all modes. ; Default is 0 EnableDithering=0 ; LimitTextureFormats - Integer ; Limits the available texture formats returned by EnumTextureFormats to ; avoid crashes in some games. When limited, texture formats will be returned ; in the same order as given in Wine 4.14, subject to the limitation of ; currently implemented formats. ; The following values are valid: ; 0 - Don't limit formats regardless of API version ; 1 - Limit formats on API versions 2 and 1 (DirectX 5 and DirectX 3/2) ; 2 - Limit formats on all API versions. ; Default is 1 LimitTextureFormats=1 [advanced] ; TextureFormat - Integer ; Determines the internal format to use for textures and DirectDraw ; surfaces. ; This option is reserved for future expansion, and the only valid value is ; currently 0. TextureFormat=0 ; TexUpload - Integer ; Determines the method used to upload texture data to the graphics card. ; This option is reserved for future expansion, and the only valid value is ; currently 0. TexUpload=0 ; WindowPosition - Integer ; Selects the position for the window on application startup, when using ; forced-window mode. ; The following values are valid: ; 0 - Center window on screen. ; 1 - Use last remembered position. ; Default is 1 WindowPosition=1 ; RememberWindowSize - Boolean ; Determines whether to remember the last window size in forced window ; mode, by saving it in the registry. This will set the initial window ; size before the first SetDisplayMode command. This value will be ; saved in the per-app profile as WindowX and WindowY. ; Default is true RememberWindowSize=true ; RememberWindowPosition - Boolean ; Determines whether to remember the last window position in forced ; window mode, by saving it in the registry. This value will be saved ; in the per-app profile as WindowWidth and WindowHeight. ; Default is true RememberWindowPosition=true ; NoResizeWindow - Boolean ; If true, do not resize the window when using resizable window mode, when ; SetDisplayMode is called. ; Default is false NoResizeWindow=false ; WindowX - Integer ; Remembered X position of the window when using forced window modes. ; Default is a position that puts the current window size in the center of the ; screen. ; WindowX=0 ; WindowY - Integer ; Remembered Y position of the window when using forced window modes. ; Default is a position that puts the current window size in the center of the ; screen. ; WindowY=0 ; WindowWidth = Integer ; Remembered width of the window when using forced window modes. ; Default is 640 WindowWidth=640 ; WindowHeight - Integer ; Remembered height of the window when using forced window modes. ; Default is 480 WindowHeight=480 ; WindowMaximized - Boolean ; Remembered maximized state of the window when using resized window mode. ; Default is false WindowMaximized=false [debug] ; DebugNoExtFramebuffer - Boolean ; Disables use of the EXT_framebuffer_object OpenGL extension. ; WARNING: If this is enabled and either ARB_framebuffer_object is ; unavailable or DebugNoArbFramebuffer is enabled, then DXGL will fail ; to initialize. ; Default is false DebugNoExtFramebuffer=false ; DebugNoArbFramebuffer - Boolean ; Disables use of the ARB_framebuffer_object OpenGL extension. ; WARNING: If this is enabled and either EXT_framebuffer_object is ; unavailable or DebugNoExtFramebuffer is enabled, then DXGL will fail ; to initialize. ; Default is false DebugNoArbFramebuffer=false ; DebugNoES2Compatibility - Boolean ; Disables use of the ARB_ES2_compatibility OpenGL extension. ; Currently this means that GL_RGB565 16-bit internal texture format ; will not be used. ; Default is false DebugNoES2Compatibility=false ; DebugNoExtDirectStateAccess - Boolean ; Disables use of the EXT_direct_state_access OpenGL extension. ; This extension allows DXGL to more easily manipulate texture and other ; objects. Disabling direct state access will revert to a more traditional ; approach to manipulating OpenGL objects. ; Default is false DebugNoExtDirectStateAccess=false ; DebugNoArbDirectStateAccess - Boolean ; Disables use of the ARB_direct_state_access OpenGL extension. ; This extension allows DXGL to more easily manipulate texture and other ; objects. Disabling direct state access will revert to a more traditional ; approach to manipulating OpenGL objects. ; Default is false DebugNoArbDirectStateAccess=false ; DebugNoSamplerObjects - Boolean ; Disables use of sampler objects. Disabling sampler objects may reduce ; the performance and accuracy of Direct3D commands. ; Default is false DebugNoSamplerObjects=false ; DebugNoGpuShader4 - Boolean ; Disables use of the EXT_gpu_shader4 OpenGL extension. ; Disabling this extension may reduce the accuracy of DirectDraw drawing ; commands. This has no effect on OpenGL 3.0 or later as this functionality ; is in core. ; In addition disabling GLSL 1.30 and EXT_gpu_shader4 will disable DirectDraw ; ROP support. ; Default is false. DebugNoGpuShader4=false ; DebugNoGLSL130 - Boolean ; Disables use of GLSL 1.30 shaders. Enabling this parameter as well as ; DebugNoGpuShader4 will disable integer processing of DirectDraw commands ; as well as disabling DirectDraw ROP support. ; Default is false DebugNoGLSL130=false ; DebugUploadAfterUnlock - Boolean ; Uploads surface contents immediately after unlock. This parameter can help ; with debugging surface uploads, but can also reduce performance. ; Default is false DebugUploadAfterUnlock=false ; DebugNoMouseHooks - Boolean ; Disables API hooks that adjust the mouse pointer position in scaled modes ; and forced window modes. If this is disabled, API functions like ; GetCursorPos() and SetCursorPos() will not be adjusted to the scaled size ; and position of the screen. ; Default is false DebugNoMouseHooks=false ; DebugNoPaletteRedraw ; Disables redrawing the screen when the primary color palette is changed. ; If this is enabled, the palette will be updated the next time another ; DirectDraw API draws to the screen or flips the primary buffer. ; Default is false DebugNoPaletteRedraw=false ; DebugBlendDestColorKey - Boolean ; Blends the temporary texture used for destination color keying with the ; source. This can reveal if the temporary texture is aligning correctly ; with the destination coordinates being used for a Blt operation. This ; should only be enabled for development and regression testing purposes. ; Default is false DebugBlendDestColorKey=false ; DebugMaxGLVersionMajor - Integer ; Determines the maximum OpenGL major version available to DXGL. ; If the system has a lower OpenGL version that will take precedence. ; If this value is 0 than DXGL will use the highest OpenGL version ; available to the system and ignore DebugMaxGLVersionMinor. ; Default is 0 DebugMaxGLVersionMajor=0 ; DebugMaxGLVersionMinor - Integer ; Determines the maximum OpenGL minor version available to DXGL. ; This will be ignored if the system OpenGL major version is less than ; DebugMaxGLVersionMajor. ; Default is 0 DebugMaxGLVersionMinor=0 ; DebugDisableErrors - Boolean ; (future) If OpenGL 4.6 is installed, creates an OpenGL context that has ; OpenGL errors disabled. This may potentially increase performance at the ; risk of increased undefined behavior. ; This option has no effect on OpenGL 4.5 or earlier drivers unless the ; GL_KHR_no_error extension is available. ; Default is false DebugDisableErrors=true ; DebugTraceLevel - Boolean ; Sets the debug tracing level for DXGL. This can be used to diagnose bugs ; in DXGL. The log will be saved as dxgl.log and will be overwritten if it ; already exists. ; The following values are valid: ; 0 - Disable tracing. ; 1 - Log system info and errors only ; 2 - Log system info, errors, and certain informational messages ; 3 - Log system info, errors, and certain informational messages, and log ; a trace of API calls. DebugTraceLevel=0 [hacks] ; Hacks are intended for specific scenarios, and may cause undesired effects ; if used with games they do not apply to or are combined. ; HackCrop640480to640400 - Boolean ; Crops 640x480 display mode to 640x400. This should be used if a game ; displays internally at 640x400 but sets the display mode to 640x480 and ; letterboxes the output. This hack is only active in fullscreen mode at ; 640x480 display mode. ; Default is false HackCrop640480to640400=false ; HackAutoExpandViewport - Boolean or integer ; Detects when the application is rendering a 512x448 image in 640x480 mode. ; This can take effect in 640x480 DR mode in ZSNES, or 640x480 mode in Zelda ; Classic. If it is detected that the game is drawing outside the 512x448 ; boundaries, for example in ZC's menu, the hack will be temporarily disabled ; to prevent cutting off these items, then automatically go back into effect ; when when it is detected the out-of-bounds area is clear, like going back ; in-game. This hack should only be enabled on games that render 512x448 with ; black bars in 640x480 mode. ; This was previously known as HackAutoScale512448to640480. ; The following values are valid: ; 0 - Do not expand viewport ; 1 - Expand 512x448 to 640x480 or 256x224 to 320x240 ; 2 - Expand 512x480 to 640x480 or 256x240 to 320x240 ; Default is 0 HackAutoExpandViewport=0 ; HackAutoExpandViewportCompare - Integer ; Selects the comparison methd to detect blank pixels outside the boundary ; defined by HackAutoExpandViewport. ; The following values are valid: ; 0 - Activate when the pixel matches a set color ; 1 - Activate when the pixel color is less than or equal to a set color ; 2 - Activate when the pixel color is greater than or equal to a set color ; 3 - Activate when the pixel value matches a set value (i.e. palette index) ; 4 - Activate when the pixel value is less than or equal to a set value ; 5 - Activate when the pixel value is greater than or equal to a set value ; 6 - Activate when the pixel value is one of 3 8-bit values in 8-bit mode ; Default is 0 HackAutoExpandViewportCompare=0 ; HackAutoExpandViewportValue - Hexadecimal integer ; Value to use for comparison when detecting blank border pixels. ; This value is dependent on the color depth of the primary surface, and ; if using color comparison under 8-bit color uses the the 32-bit color of ; the pixel's palette lookup, or in value comparison uses the palette index ; of the pixel. For 15 and 16 bit modes, value comparison uses the exact ; value in this option while color comparison uses the equivalent 24-bit ; color value. Color values should be specified as RRGGBB, for instance ; red would be 0xFF0000. ; When comparing by color, it will compare by red, green, and blue, however ; when comparing by palette, it will compare by the numeric value of the ; pixel. ; Default is 0x0 HackAutoExpandViewportValue=0x0 ; HackNoTVRefresh - Boolean ; Removes TV-compatible refresh rates that may be added by Windows 7 and ; above. If a rounded refresh rate is not available it will be added. ; This may fix some games that may run at a reduced framerate due to these ; compatible refresh rates operating above the integer refresh rate. ; Default is false HackNoTVRefresh=false ; HackSetCursor - Boolean ; Applies a hack to the SetCursor() API to try to prevent a flickering cursor ; in some scenarios. This is a contributed code to mitigate this issue in the ; game "Atlantis 1" and may or may not work in other scenarios. ; Default is false HackSetCursor=false ; HackPaletteDelay - Integer ; Sets the time delay in milliseconds since the last frame was drawn before ; SetPalette or SetEntries causes the screen to be drawn. Setting this too low ; can generate excessive frames. Setting this too high can cause palette ; effects to be missed. The default is set to a reasonable delay for a 60Hz ; monitor. ; Default is 30 HackPaletteDelay=30 ; HackPaletteVsync - Boolean ; Determines whether to wait for Vsync before drawing the screen due to a ; palette change. Setting to true can reduce tearing (or flickering on NVIDIA ; drivers) but may reduce framerate. Try adjusting the delay before changing ; this. ; Default is false HackPaletteVsync = false