These options do not affect the Amiga emulation itself, but will affect how the Amiga output is displayed on your computer. These options may affect how well FS-UAE performs.
Display Settings
fullscreen
Open the emulator in fullscreen or windowed mode (1 = fullscreen, 0 = window). The default is windowed mode at 960×540.
fullscreen = 0
fullscreen_mode
Since 1.1.8. You can set this option to fullscreen-window instead if you want to use the fake fullscreen support (a borderless window the size of the current display will be created instead of switching to real fullscreen).
fullscreen_mode = fullscreen
fullscreen_width
Since 1.1.8. Use to override fullscreen mode width. Normally this is not necessary, as FS-UAE uses the current desktop resolution by default (recommended), but can be useful in some circumstances (multi-monitor setups on nVIDIA/Linux).
fullscreen_width = 1024
fullscreen_height
Since 1.1.8. Use to override fullscreen mode height.
fullscreen_height = 768
window_width
Specify the width of the FS-UAE window to create on start-up.
window_width = 960
window_height
Specify the height of the FS-UAE window to create on start-up.
window_height = 540
window_resizable
Set to 0 to make the window non-resizable.
window_resizable = 1
fsaa
Set to , 4 or 8 to enable full-scene anti-aliasing (reduces jagged edges in menu-mode). Specify 2 for 2x, 4 for 4x, etc. This may negatively impact rendering performance, depending on your GPU.
fsaa = 0
keep_aspect
If keep_aspect is set to 1, the amiga video output will be scaled with the aspect ratio intact, otherwise it will be stretched to fill the screen. The default is 0.
keep_aspect = 0
Filters, Shaders and Scaling
scanlines = 0
Enable scanlines by setting scanlines to 1. The default is 0. When scanlines are enabled, you will see aliasing effects if your resolution is low (and in window mode). Use fullscreen mode with sufficient resolution and the scanlines effect should look good. There will also be a visible moire pattern when entering menu mode (this is normal). Scanline rendering is done on the CPU, and this may negatively impact emulation speed if you do not have a sufficiently fast CPU.
rtg_scanlines = 0
Since 1.1.3. By default, when enabling scanlines, they are not shown when the Amiga opens a RTG screen (“Picasso96”). You must also set rtg_scanlines = 1 if you want to render scanlines on these screens.
scanlines_dark = 10
Intensity of scanlines, in percent. The default, when scanlines are enabled, is 10 (percent) black.
scanlines_light = 5
To prevent an overall darker image, you can lighten the “other” lines. The default, when scanlines are enabled, is 5 (percent).
shader = curvature
Since 1.3.0. The option shader be either the name of a bundled shader, or path to a shader in XML Shader Format 1.1. The bundled shaders are:
- curvature
- …
low_resolution = 0
Since 1.3.2
line_doubling = 1
Since 1.3.2
scale_x = -1.0
Since 1.3.0
scale_y = -1.0
Since 1.3.0
align_x = 0.5
Since 1.3.0
align_y = 0.5
Since 1.3.0
zoom = 640x512+border
Since 1.3.2. This setting controls the initial mode for the F11 zoom key, which defaults to auto. Valid values are (with or without +border):
- auto – viewport settings are only used in auto mode
- full – which is full frame, not full zoom
- 640×400
- 640×480
- 640×512
The zoom settings has no effect while in RTG graphics mode (“Picasso 96”).
texture_filter
Since 1.3.8. FS-UAE by default renders the Amiga display as a texture with texture filter set to GL_LINEAR. You can use the following option to force GL_NEAREST filter:
texture_filter = nearest
Video Synchronization
The following option can be used to override the automatic configuration of video synchronization.
video_sync = auto
Video sync behaviour can be configured with the “video_sync” option. The default setting is auto. The available values are:
- off – video and emulation will not be synced to the display
- vblank – video buffer swap (but not emulation) will be synced to vblank to remove tearing
- full – emulation and video will be synchronized to the display. This will give perfect scrolling if the display refresh rate matches the game’s refresh rate.
- auto – this sets video sync to “full” if the refresh rate matches the game’s refresh rate, and “vblank” if not.
It is generally recommended to leave this option at auto. If you change your desktop to a 50Hz screen mode, full synchronization and smooth scrolling will be enabled automatically.
video_sync_method = finish-sleep-swap-finish
Since 1.1.9. Choose the method used to ensure video synchronization with the display. Valid values are:
- swap – Most basic method, but will probably not mantain emulation perfectly in sync on many GPUs due to pipelining and the swap buffers command returning before it is completed.
- swap-finish – This method should force the emulation to be in sync with the display, but glFinish may use a busy-loop and cause high CPU usage.
- finish-swap-finish – Execute a glFinish also before swapping buffers. May work better with some OpenGL drivers. Otherwise same as swap-finish (High CPU usage with many drivers).
- finish-sleep-swap-finish – Same as above, but sleep before executing the swap command. The sleep time is based on the (estimated) time left to the next vblank. This should reduce the CPU usage a lot, but on some systems/drivers, the display will not be synchronized properly.
- sleep-swap-finish – Same as above, but do not issue a glFinish before starting the sleep. This should use less CPU than the above option, but some drivers seem to need the finish before the sleep to achieve proper sync.
- swap-fence – Set a fence after swapping buffers and poll periodically (with sleeps) for completion of swap. This seems to work very well on Linux with recent nVIDIA drivers.
- swap-sleep-fence – Same as above, but sleep a while (based on estimated time to next vblank) before starting to pool the fence, (in case the test-fence method blocks with high CPU usage, problem seen on nVIDIA/Windows).
The default value is:
- for Windows and Mac OS X: finish-sleep-swap-finish
- for Linux: finish-swap-finish
Video and Texture Buffer Formats
Changing the video and texture buffer formats may improve texture upload speed on your computer. The default values are the most efficient options for most computers.
video_format
Since 1.1.4. This option allows you to configure whether video data is stored in RGBA or BGRA byte order in the internal video buffers. This setting (together with texture_format) may affect texture upload performance. The option should not be shared between computers, since appropriate values may differ for other operating system or OpenGL GPU vendors. Valid values are:
- bgra – This is the default setting as it has been verified to provide best performance with most OpenGL drivers.
- rgba – Depending on your system, this may give better performance.
video_format = bgra
texture_format
Since 1.1.4. This option allows you to configure the internal texture format used by OpenGL for displaying the Amiga video frames. This setting (together with video_format) may affect texture upload performance. The option should not be shared between computers, since appropriate values may differ for other operating system or OpenGL GPU vendors. Valid values are:
- rgb
- rgb8
- rgba
- rgba8
texture_format = rgb