Skip to content
Christer Solskogen edited this page Nov 8, 2023 · 75 revisions

Frequently Asked Questions

Q: I have a Competition Pro joystick but the mapping doesn't seem to be correct. What can I do?

A: The below is only an issue with older versions of Amiberry. Amiberry v5.x or newer already includes the correct mapping in the controllers file. Starting with v4.x of Amiberry, we use SDL2's "gamecontrollerdb.txt" file for mappings of known controllers. It seems that the Competition Pro is re-using a gamepad USB ID, so it gets an incorrect mapping from that file. To fix the problem, you'll need to edit the file conf/gamecontrollerdb.txt with a text editor, and find the line starting with the following ID:

03000000790000001c18000011010000,PC Game Controller

Change that line with the following contents:

03000000790000001c18000011010000,Competition Pro Extra,a:b3,b:b1,back:b2,leftx:a0,lefty:a1,start:b0,platform:Linux,

Save the file and restart Amiberry. The mapping should now work properly for this joystick.

Q: Amiberry on a Pi4/Pi400 seems extraordinary slow. The Status Line shows it's only doing 30 FPS. What's wrong?

A: Is your connected monitor/TV a 4K one? If so, it may be forcing your Pi output to 4k@30Hz resolution. Amiberry uses VSync, so it will only show as many frames per second as the current refresh rate of your monitor. If that's set to 30, video and audio will be choppy and slower than expected. Normally you can change the resolution in /boot/config.txt and force it to a 1080p one. However, some SmartTVs seem to ignore that and force a 4K resolution again... If that's the case with you, you could try forcing the configuration to 1080p in /boot/config.txt by using these additional options:

[hdmi:0]
hdmi_max_pixel_freq=200000000
[hdmi:1]
hdmi_max_pixel_freq=200000000
hdmi_ignore_edid=0xa5000080

Q: When I type some letters on the keyboard, I get unexpected behavior (e.g. typing x also adds Return). What's wrong?

A: Don't use the "Keyboard as Joystick" option in the Input panel. The CD32 mapping uses some extra keyboard keys that will interfere with normal keyboard typing.

Q: Input latency seems increased, when running Amiberry under a full Desktop. What can I do?

A: Disable the Compositor to gain some more performance. On XCFE desktops for example, you can disable your compositor by opening the main Applications menu and clicking “Settings -> Window Manager Tweaks.” This will open a new window. Open the Compositor tab, and uncheck the option “Enable display compositing.”

Q: How can I launch CD32 games from .CUE/BIN CD images?

A: Launching CD32 games does not require any default config, and you shouldn't use the A1200 config with it either (it won't enable the CD32 specific bits). If you have .cue/bin files, then the best way to launch them would be:

  1. From the command line: use the -autoload parameter. E.g. ./amiberry -autoload /home/pi/RetroPie/roms/amiga/Alien Breed - Tower Assault_CD32.cue (use escape characters where necessary, to handle spaces)
  2. From the GUI: Select CD32 from Quickstart, select the .CUE file in the CD slot, click on Start. CD32 images don't need or use WHDLoad. If you have WHDLoad installed CD32 games however, you can also launch them using the -autoload option, in the same way as shown above. Only the file passed would probably be an .lha one, not a CD image. Keep in mind that WHDLoad games usually don't contain CD audio tracks, so you'll be missing those...

Q: My keyboard doesn't have a Right Windows or Menu key. How can I access the RAmiga key?

A: Since Amiberry v3.4, there are two ways you can handle this:

  1. Enable the RCltrl = RAmiga option, in the Misc. Panel of the GUI. This option saves to a normal UAE config file, like all the other options from the GUI.
  2. If you want to have this option turned on by default, regardless of what UAE config was loaded, you can alternatively edit the amiberry.conf file and edit the option rctrl_as_ramiga. If either one of this options is enabled, the RCtrl key will function as the RAmiga key under emulation.

Q: I have thousands of Config files in my installation, and Amiberry takes a long time to display the GUI.

A: The default behavior is to scan the list of config files, open each one and get the Description in order to populate the list in the GUI. If you have many such files, the process can take a longer time than desired. To bypass this behavior, you can make a change in the conf/amiberry.conf file:

  • Open the file, and look for the line read_config_descriptions.
  • Change the value of that line to no and save the file again.
  • Restart the emulator for the changes to take effect.

Q: My game runs too fast, what can I do?

A: Run the Whdload versions and Switch on “wait for blitter” and this should fix the speed issue on many games.

Q: I've got a question about the WHDLoad booter...

A: Please refer to the specific FAQ for this: WHDLoad Booter F.A.Q

Q: Amibery v2.19 was faster in benchmarks, when using JIT and Fastest Possible/Turbo mode, than the latest version!

A: The reason for this change is that we implemented more instructions in the JIT engine, in versions of Amiberry after v2.19. Those instructions were not implemented in older versions, and they were instead empty "no-op" placeholders. So of course, benchmarks run faster since those instructions were not doing any actual work in the background. However, with these implementations we improved compatibility in several areas (e.g. 3D Raytracing software) which had issues before.

Q: Audio is noticable distorted when playing back with USB audio device instead of 3.5mm audio jack

A: Check if you're using a GPIO kernel module, which imposes some latency. Normally there shouldn't be any difference in audio latency from Amiberry, regardless if you're using the 3.5mm audio jack, HDMI-out, or a USB audio card.

Q: I want to troubleshoot something. Can I enable logging in Amiberry?

A: Logging can be enabled from the GUI (Paths panel) or by changing a value in the conf/amiberry.conf file:

  • Open the file, and look for the line write_logfile.
  • Change the value of that line to yes and save the file again.
  • Restart the emulator for the changes to take effect. A new file named amiberry_log.txt will be created in the same location the emulator was started from. Additionally, the WHDLoad booter will also save log information in the whdboot/save-data/Debugs path. Note: Make sure that the user running the emulator has permissions to create the file!

Q: Can I enable Scanlines by default for all games?

A: Yes, with v2.24 onwards a new feature was added, you can make a change in the conf/amiberry.conf file:

  • Open the file, and look for the line scanlines_by_default.
  • Change the value of that line to yes and save the file again.
  • Restart the emulator for the changes to take effect. Note: Scanlines requires that Line Doubling is also enabled, which will cause a performance hit, since double the amount of lines will have to be drawn on-screen. Also, if your vertical resolution is not enough to display scanlines, this option will have no effect (it will revert back to no scanlines automatically).

Q: Are HDFs with multiple partitions and custom Filesystems (e.g. PFS) supported?

A: Yes, you can use HDFs with RDB and multiple partitions, even if they were formatted using PFS. If you use a custom filesystem without RDB mode HDFs, just remember to place the Filesystem handler you're using (e.g. FastFileSystem or pfs3aio) in the kickstarts directory, along with your Kickstart ROMs. Then add your HDF as normal, and Amiberry will automaticall look for it there and attempt to mount the partitions during startup.

Q: When the emulator starts up, I get a few warning messages (MESA-LOADER: failed to retrieve device information) on the console. Is this a problem?

A: This is due to a known bug in libdrm (https://bugs.launchpad.net/raspbian/+bug/1656930). It's harmless and you can ignore it.

Q: Amiberry doesn't startup, but everything else looks normal

A: Check your gpu_mem settings. gpu_mem needs to be set to (minimum) 32 in config.txt

Q: I get a black screen as soon as I start Amiberry (Raspberry Pi). Why?

A: You're using the kms driver, while amiberry is compiled for DispmanX. Either recompile amiberry for sdl2 or change from kms to fkms in config.txt

Q: Can I change the directory Amiberry will look for its data files?

A: Yes, if you set the environment variable EXTERNAL_FILES_DIR to any valid path, Amiberry will automatically use that to lookup the required subdirectories, instead of the current dir you started it from.

Q: Mac OS M1 App is broken. Why?

A: The binary is not broken, but Apple OS does for some strange reason not allow non-signed apps to be run if you download it with a browser. There are two workarounds: Download the zip file with wget or run "xattr -rd com.apple.quarantine Amiberry.app"

Q: What is KMSDRM and should I use it?

A: KMSDRM makes it possible to run Amiberry in console, without running X11 or wayland. It might squeezes a little bit of extra performance. That said, the performance gain from running in KMSDRM is neglectable for most use cases. You'll probably wont see the difference unless you're running benchmark or do rendering on the emulated Amiga.

Q: When I use Amiberry in KMS the mouse doesn't work. Why? (Raspberry PI OS)

A: There are several issues with the version of SDL2 shipped with Debian Bullseye / Raspberry Pi OS. You have install your own, or upgrade to the latest Raspberry Pi OS (Bookworm) which doesn't have this issue.

Q: How do I use Amiberry in KMSDRM (console) or Why is KMSDRM so slow?

A: The SDL that is distributed in Debian Buster (2.0.9) doesn't support KMSDRM, and the one in Bullseye (2.0.14) have some bugs that has been fixed in the latest upstream version of SDL(2.0.18 and later), so in order to fix that you have to install that manually. How to do that is out of scope for this FAQ. If you run Manjaro or Arch Linux KMSDRM is supported out of the box, no need for additional hacks. The latest Raspberry Pi OS (Bookworm) also works.

Q: Which KMS driver should I use?

A: Amiberry works with all versions, but keep in mind the following when making your decision:

  • KMS is the new default in newer distros, including the offical RPI-OS one (starting with Bullseye)

Q: Sound doesn't work with KMS (Raspberry Pi OS)

A: But it works when using the fkms driver, right? Install pulseaudio and reboot.

Q: I was told that the speed of the Pi5 was great, but it's slow for me

A: There seem to be a problem with SDL so that it prefers X11/Xorg over Wayland, and as long as Xwayland is running, SDL uses that instead of it's wayland driver. This slows down SDL (and therefore also Amiberry). You can either switch to X11 (raspi-config -> 6 Advanced Options -> Wayland -> W1 X11 Openbox window manager with X11 backend) - or start amiberry like this: SDL_VIDEODRIVER=wayland ./amiberry

Q: How to I enable support for IPF files

A: In order to do this, Amiberry needs an external library (capsimg). If you have downloaded a pre-compiled release, the library is already included in the archive. But if you have compiled Amiberry from source yourself, you may be missing it. You can follow these steps to build that library manually:

Go in the directory where you have cloned the amiberry sources, then follow this:

sudo apt install autoconf  
git submodule update --init  
make capsimg

If all went well, you should have the library file compiled in the current directory:

capsimg.so

You will need to copy the file above into the same directory your amiberry binary is located, so it can open it on startup.

E.g. if you're running RetroPie: sudo cp capsimg.so /opt/retropie/emulators/amiberry/

Start the emulator and try to load IPF images as disks (either from the Quickstart or the Floppy panels).

Clone this wiki locally