Legacy AMD APU Llano Laptop for Emulation tests - Part 2

Software tools and Emulators used.

I covered everything about my laptop and its history. I went from Windows 10 to Manjaro XFCE 19 and installed needed software to get great performance and needed emulators to suit my laptop’s hardware. I find AUR builds easy again because I can find plugins and needed standalone emulators for good testing. AUR builds work almost perfect for me, aside from some build time, but as long as it can installed a program or an extension, I’m good.

For my laptop, I installed TPC, or TurionPowerControl to overclock my laptop’s CPU. The bios doesn’t have an option for permanent overclock, since it’s a laptop. However, the CPU has used much voltage by default for big room for overclocking with little higher power draw. At stock, it run at base 1.5Ghz at 1.1625V and 2.4Ghz boost at 1.415V. It can easily be undervolted to cool the laptop a bit. The temp limit is at 85C, so it can throttle the CPU if it reaches around that point. Undervolt would go down to 1.5Ghz at 1.0625V and 2.4Ghz boost at 1.200V, which brings down about seven percent deop on temperature, and little more battery life. Overclock would hit up to 2.3Ghz at 1.175V and 2.8Ghz at 1.400V, only little voltage change on each, and still runs stable. Note that each CPUs can differ silicon quality that can reach lower or higher voltage for overclocking or undervolting. Averagely, my laptop’s CPU performance would be 33% increase. The Llano APUs are one of the exceptions that you can overclock your laptop without much worry.

I installed Gamemode for Linux, and I explained in the last page. It’s useful for setting power mode for both CPU and GPU to performance mode, so it will use highest clock speed as much as it can. Radeon-Profile is an app on Linux that can force power mode on GPU if you run a program if you can’t use gamemode for whatever reason. On Windows, you can force performance mode on Catalyst driver, and have Windows set to performance mode on power setup. Drivers used on Linux as of this writing is Mesa r600g Driver 19.3.

Now let’s get to the list of emulators I will be using for each system. Some are using Retroarch.

NES: I’m using Nestopia and Mesen on Retroarch. Both are quite accurate, with the latter being the most accurate. Nestopia is the fastest option, but Mesen can run pretty smoothly too with default settings. Nestopia has much more headroom for Runahead and NES CPU overclocking. I use FireBrandX’s digital palettes.

SNES: I use Snes9x Mainline for Retroarch and new standalone Bsnes v110 for test. Snes9x runs very well and can use both features listed above. Bsnes is used for testing mostly. I’ll explain about Bsnes, but what I can say is it can run a lot of games at fullspeed. No need for Libretro’s old many Bsnes cores in my opinion and Snes9x Mainline is suitable generally. Bsnes AUR builds are available.

N64: On Windows, it was Project64 with Jabo’s D3D8 1.6.1 Plugin, but after switching to Linux, Mupen64Plus with GlideN64 while using Mesa drivers offers a better option. Since February 2020, M64p is free once again so you don’t have to do DIY build for each plugin to use with Mupen64plus, and get good GUI. Just go to this website: https://github.com/loganmc10/m64p/releases . If it doesn’t go free in the future, you would have to use AUR files to build plugins and find the gui. There is Mupen64Plus Next for Retroarch, but a standalone build is the fastest and more reliable option.

Gamecube/Wii: I use beta builds of Dolphin to measure it. We’ll explain about that later on.

Sega SMS/Genesis/GameGear/32x: I use Genesis GX Plus on Retroarch, and it runs pretty great. For 32x, I can use Kega Fusion for Windows, or Picodrive core, but I don’t have 32x game to test.

Sega Saturn: I use Yaba Sanshiro, and it’s the fastest emulator you can get for the laptop. Yaba Sanshiro has some great options.

Sega Dreamcast: I installed Redream. It is the fastest dreamcast emulator available and more accurate than NullDC. I do have a fork of Reicast called Flycast that is used for testing too. https://flyinghead.github.io/flycast-builds/ (ubuntu build is just linux build). I do recommend using Flycast standalone builds instead of Libretro core one since standalone Hardware-based rendering emulators often run faster than on Retroarch.

Playstation 1: I use both PCSX-R PGXP and PCSX-Rearmed core. PCSX-R has great option for perspective correction and much less jittering polygons while being faster than Libretro’s Beetle PSX core and standalone Mednafen. The explanation on those four emulators and the windows PCSX-R on Pete’s OpenGL2 Tweak will also be mentioned.

Playstation 2: I use PCSX2.

GB/GBC: Sameboy. It is more accurate than Gambatte and VBA.

GBA: mGBA, and it is the fastest and most accurate GBA emulator I used.

NDS: Despite development drama, I use standalone Desmume mainline. It’s pretty good for this laptop since you have an option to use frameskip. MelonDS with JIT will be included.

3DS: Citra Canary is the best option.

PSP: PPSSPP.

Dos: Dosbox ECE or Dosbox-X at best. ECE install for Dosbox is difficult, and you would need to build one, but I wanted a 32bit build since the dynamic core is pretty robust in 32bit. However on Linux, some forks or main are kinda hard to find 32bit version to have full speed for dynamic recompiler since 64bit is slower or has bugs. At the end, I use Dosbox-X, and it performs the same as standard Dosbox on normal mode. On Dynamic mode, you would need 32bit version to get the exact on either Windows or Linux.

Win9x: PCEM. Using v15 and use 486 CPUs.

Wine: Linux specific to run Windows programs. You can use Stable builds or Staging builds. Lutris and Proton can be used. Although, since my laptop’s APU lacks Vulkan support, running DX11 games are much harder and barely run. The APU isn’t really that strong for many DX11 games anyway. DX9 works with default OpenGL wrapper, but since we’re using AMD GPU with a Mesa Gallium Driver, we can run Native DX9 API on Wine with Gallium Nine Standalone. You just install needed dependencies for Mesa D3D9 files to have Gallium Nine config enable Native DX9. DX10 is the same story as DX11. DX8 and lower works pretty good for the most part. Note that Wine is not an Emulator, but a compatibility layer.

Those are the softwares that will be used for performance testing on the next page.

Next Page on CPU emulation tests.

Previous Page on the laptop overview.