RetroArch v0.9.9 Coming Soon

It’s almost time for a new release of RetroArch, and there a number of big changes coming up. First of all, RetroArch 0.9.9 will mark the release of RetroArch on iOS and Blackberry 10/Playbook Tablet OS. These ports were made possible with the help of CatalystG and meancoot, respectively – for which many thanks. The iOS port will be released on Cydia and on our forum. It is possible to run it on a non-jailbroken device – but it will require that you are able to code-sign yourself (ie. if you are a registered Apple developer with the ability to code sign).

PCSX ReARMed on iOS

For iOS, perhaps the single biggest hurdle was getting PCSX-ReARMed working, which required notaz to rewrite much of the assembly code to work with Apple’s ancient GAS assembler version (big thanks to him for that!). With that completed, this should be the first time PCSX ReARMed will appear on iOS – through RetroArch.

RGUI

Elsewhere, Themaister and Squarepusher have been toiling away at a million other features, including the promotion of RGUI to a robust and feature-filled in-game menu system for the platforms that otherwise lacked such a thing, particularly the PC platform (i.e., Windows, Mac OS X and Linux). From its humble beginnings with the Gamecube/Wii port, RGUI now provides a way to change emulation cores, swap out ROMs, configure shaders and more, all without leaving the fullscreen gaming interface:

rgui

Cave Story (NXEngine)

ToadKing and Squarepusher have also done some work on ‘uncrippling’ Cave Story (ie. NXEngine). Previously, the file I/O would make it unbearably slow on consoles. This has mostly been fixed now that everything is pre-cached into RAM at initial startup. There are still some incidental dips to 59.50fps and 59.2fps, though, which causes some sound stuttering. The cause of these dips is still unknown but we feel that–compared to before–NXEngine can be safely released on consoles now without being an utter embarrassment. “Xbox 1/360 will require some further patching up of the codebase because NX Engine did some global symbol table trickery and the MSVC linkers have the (oh so ‘smart’) tendency to ‘strip away’ unreferenced symbols as an ‘optimization feature’ with no way to stop it from doing that (even /ref:noopt doesn’t help there),” Squarepusher noted.

TyrQuake

The port of TyrQuake will also be bundled with RetroArch 0.9.9. A lot of work went into making it work on Xbox 1 and Xbox 360 – including making the C99 codebase cross-compilable as C++98 and (for Xbox 1) resorting to a hacked-up template ‘typeof’ implementation (ye, don’t ask) for MSVC 2003. “I also threw in some additional ‘hackish’ features like ‘dither filtering’ (borrowed it from some guy that implemented it earlier) – this more or less looks like the Unreal 1 software renderer’s ‘bilinear filtering’ implementation,” Squarepusher said. “There is also a third-person chase cam view and a way to ‘lerp’ the animations (ie. add key-frame interpolation in order to make the animation of enemy models look smoother and have more frames of animation than they originally did).”

“I plan to eventually rebase the TyrQuake port and push it upstream to the original authors (ie. the maintainers of TyrQuake) – I did a lot of careless code rewriting that I’ll be sure to avoid for the rebase,” he added.

Shaders

There has been a major overhaul of the way shaders are handled, which has paved the way for advanced, multipass shaders that can be easily setup by end users without needing to tinker with any code. As part of these changes, the old XML/GLSL shaders with fixed-pipeline functions have been deprecated, but will still work just fine. In the future, we ask that interested shader authors try to stick to the multiplatform Cg format when possible. The GLSL/GLES formats will still be supported for compatibility with platforms that don’t support Nvidia’s Cg Toolkit, such as Android and iOS, and Cg shaders can be converted to these legacy formats programmatically using Themaister’s cg2glsl python script.

A couple of examples of newly written shaders that utilize some of the recently added features are Themaister’s NTSC Composite shader, which should work well on any libretro core, and Harlequin’s Gameboy shader:

There is no firm release date for v0.9.9, but if you would like to try any of these features out or get involved in the development, you can grab the code from git and compile it yourself for your platform of choice. If you have any questions about these features or RetroArch/libretro in general, stop by the libretro forums or drop by #retroarch on Freenode IRC.

Discuss this post

RetroArch Android 0.9.8.1 released

In many ways this is the release that the original should have been. We have been working non-stop for the past week to iron out most of the major complaints and we believe this is a much more well-rounded package now.

New key features (0.9.8.1)

  • Higher-resolution overlays (old ones are still available for older devices)
  • Now compatible with Android 2.3+
  • Fixed Wonderswan core (Mednafen Wonderswan)
  • Numerous PCSX ReARMed improvements (PAL games should be fixed and emulator should now work on devices that didn’t work before)
  • Custom input mapping
  • Numerous pads added to autodetection list (see below).

Downloads

Google Play – https://play.google.com/store/apps/details?id=org.retroarch

APK Link (r8) – https://anonfiles.com/file/0afb3a1b35c4280139a6fcb24742ecc1

Screenshots

device-2013-01-28-193937 device-2013-01-29-021513 device-2013-01-29-021623 device-2013-01-29-054121 device-2013-01-29-054733 device-2013-01-29-081922 device-2013-01-29-082139 mgs-psx

Videos

Changelog

r8 (Jan 30, 2013) – VERSION 0.9.8.1
———————————————————–
* Is now compatible with Android version 2.3 and up.
* Back button issues with certain gamepads should now be fixed.
* Wonderswan core was broken (Mednafen Wonderswan) – is now fixed.
* ‘Detect’ button for manual input binding for touchless devices.
* Old overlays are back and put into a directory called ‘Low-resolution’ for devices with slower CPUs –
the higher-resolution ones are somewhat more demanding than the original 256×256 ones.
* Input autodetection expanded –
– DragonRise USB Gamepad

r7

Test that was released on certain forums – never pushed to Play Store.

r6 (Jan 29, 2013)
————————–
* PlayStation1 [PCSX ReARMed] core fixes (from notaz)
– Fixes 50Hz PAL games (were running with sound being too fast and other irregularities before)
– Should fix emu crashing on some devices due to memory mapping issues.
* New system-specific overlays added – on new installs only these new ones will be there and the old bad ones will no longer be there. On pre-existing installs – just use the new ones – they should be much better. If you’re still unsatisfied, nothing is stopping you from editing these files yourself with a text editor and an image editor – it’s really simple to do.
* New ‘custom binding’ when you turn off ‘Configuration Autodetect Enable’ – allows you to manually put in button mapping in case we don’t support your pad. Note – it’s probably more reliable right now to select the ‘keycode’ from the dropdown list instead of pressing the button on the pad.
– Input autodetection expanded –
– Trust Raptor
– Should fix Logitech F710/Elecom/RetroUSB NES/etc

r5 (Jan 28, 2013)
————————–
* Input autodetection expanded
– Archos gamepad
– Xperia Play
– Xbox 1 (Titanium X-JoyConverter)
– Xbox 360 (wired)
– Red Samurai Bluetooth
– Another variant of Mayflash Wii Classic
– RetroUSB SNES RetroPort
– RetroUSB NES RetroPad
– Buffalo SNES Pad
– Logicool F710 (Japanese Logitech F710)
– Elecom PS1/PS2 to USB

r4 (Jan 27, 2013)
————————–
* Input autodetection expanded
– Nyko Playpad Pro
* Fixed bug where device name would not be onscreen for long enough –
useful for reporting input name

r3 (Jan 26, 2013)
————————–
* More user-friendly core selection names
* Input autodetection expanded
– Added Mayflash Super Joy Box 3 Pro
– Added JXD S5110
– Added Logitech Dual Action
– Added Snakebyte idroid