# This is an example configuration file. You can use this file as a guideline on how to create your own game profiles.

# Overview:
# The filename of the game profile can be found by looking at log.txt after a game was launched in Cemu.
# A '#' character starts a one-line comment. Any text afterwards will be ignored.
# If an option is not given in the .ini file, Cemu will use the value from the global settings instead.

[General]
loadSharedLibraries = true # If set to true, system rpl files will be loaded from /cafeLibs/ if present. Default value is true
useRDTSC = true # Use RDTSC instruction as timer source for emulated CPU, OS and audio

[Graphics]
accurateShaderMul = true # If set to true, Cemu will correctly emulate the non-IEEE behavior of the shader MUL instruction. Can fix graphic issues but also decreases shader performance and increases shader compile time. Default value is true.
# Since Cemu 1.7.5 the option accurateShaderMul also supports a third mode, enabled by using the value 'min' (e.g. accurateShaderMul = min). In this mode, Cemu will emulate non-ieee MUL instructions in a more GPU-friendly way which generates less complex shaders. However, this mode might not be 100% accurate

disableGPUFence = false # If set to true, GPU fence operations will be skipped. Default value is false. Enabling this option can lead to instability and crashes

GPUBufferCacheAccuracy = 0 # Controls the accuracy of vertex, uniform and index data caching. A higher accuracy means more expensive checks which can slow down rendering. Possible values: 0 = high, 1 = medium, 2 = low

streamoutBufferCacheSize = 24 # buffer cache size of the streamout buffer in MB.

extendedTextureReadback = false # If set to true, Cemu will try to mirror data written by GPU operations to CPU RAM (but only if access by CPU is assumed to be likely) Default value is false

[CPU]
cpuTimer = cycleCounter # Timer source for OS and CPU time. Supported values are 'hostBased' (timers are based on actual OS time) and 'cycleCounter' (timers are based on speed of emulated CPU). 
emulateSinglePrecision = true # If set to false, the recompiler won't correctly round the result of single-precision instructions in certain situations. This can introduce gameplay bugs, but might also improve performance.
cpuMode = Singlecore-Recompiler # CPU mode. Possible values: Singlecore-Interpreter, Singlecore-Recompiler, Dualcore-Recompiler, Triplecore-Recompiler