Jump to content
zerojay

Hacked Hyperspin APK - 32 and 64 bit Retroarch together - Best Cores?

Recommended Posts

A few days ago, I decompiled and edited the Hyperspin APK to allow users to use 32-bit and 64-bit installations of Retroarch together. It's been confirmed working by the community and you can find that edited APK here: https://zerojay.com/nextcloud/index.php/s/3QfPqYM4A6ymjr4

It works as you would have originally expected using a 32-bit or 64-bit version of Retroarch to work, so in your Settings_Android system ini file, change the exe to com.retroarch to use the 32-bit version or change it to com.retroarch.aarch64 to use the 64-bit version.

32-bit Retroarch: 
exe=com.retroarch/com.retroarch.browser.retroactivity.RetroActivityFuture

64-bit Retroarch:
exe=com.retroarch.aarch64/com.retroarch.browser.retroactivity.RetroActivityFuture

Currently, both 32-bit and 64-bit versions of Retroarch will be called using the 32-bit configuration files, however I will likely be updating the APK to allow you to use the 64-bit configs as well for those who may wish to use different settings for both. When that happens, I'll keep both versions of the APK available so that you can decide what you want to use.

So now that the community has solved the Retroarch 32-bit problem, it would be really helpful to compile a list of cores and the version of Retroarch that it works best under. In some cases, certain cores currently only function under one or the other, but not both. In some rare cases, cores stopped working like Daphne, so again, these are things that we would like to call out. (By the way, for anything like Daphne where more recent cores no longer work, I can host them for the community if needed. Just let me know (and I do myself still need to get that working Daphne core myself).

I'll update the top post here to reflect the community's findings so that people only need to come to one place to find the info they need.

--- Core Information ----
atari800 - non-functional on 32-bit due to Android security changes, use 64-bit Retroarch core.

mame - Latest version of MAME core only recently started compiling on 32-bit, not available yet on 64-bit.

EDIT: Updated link for latest updated build.

  • Like 2
  • Super Like 1

Share this post


Link to post
Share on other sites

I had the test core for Daphne which worked really well. Updating to the version from the buildbot broke it. I too would love this working again. 

Back on topic..

Reicast core crashes for me in Atomiswave games on RA64

Latest PUAE core for Amiga is best run on RA64 if you want to load hdf files directly. 

Dolphin core is available on RA64 but does have some graphical issues in some games (e.g Starfox) 

Share this post


Link to post
Share on other sites

Hmm this is interesting. Would love to try this out but from the beginning I ran into my first problem. The moment I started a mame game from the wheel I was presented with the message "Failed saving config to "/data/data/com.retroarch/retroarch.cfg". From there everything ran as if I was running Retroarch for the very first time, no shaders loaded, couldn't use hot key buttons etc. I also noticed you patched the last version of the Hyperspin apk instead of the latest 0.1.8 version.

Share this post


Link to post
Share on other sites
43 minutes ago, sonkun said:

Hmm this is interesting. Would love to try this out but from the beginning I ran into my first problem. The moment I started a mame game from the wheel I was presented with the message "Failed saving config to "/data/data/com.retroarch/retroarch.cfg". From there everything ran as if I was running Retroarch for the very first time, no shaders loaded, couldn't use hot key buttons etc. I also noticed you patched the last version of the Hyperspin apk instead of the latest 0.1.8 version.

Hmm, you're right. The version on the store is more up to date than what apkpure gave me. I'll fix this.

Share this post


Link to post
Share on other sites

I have a feeling installing that older version caused that, I'll see when you update it.

Share this post


Link to post
Share on other sites
5 hours ago, sonkun said:

I have a feeling installing that older version caused that, I'll see when you update it.

Another forum member had tested that apk and said it worked great. He's got a lot of experience with the STV and Hyperspin. Good catch that an older version of Hyperspin had been modded. 

I've not tested it myself. At this current time, there's no real incentive for me to use RA64

Share this post


Link to post
Share on other sites

Oh yeah definitely, I noticed right away when I tried to install the modded apk over my latest version. I actually had to delete the latest version just to install the mod. I figured that's the way things had to be since he chose that version until he replied lol. This is good development right here as far as pushing Android Hyperspin forward a little.

  • Like 2

Share this post


Link to post
Share on other sites

If things pan out I will have a word with the admins about getting this rolled out or at least more visible.

Theres probably some improvements to the Beetle HW core in 64 bit. I remember the RA mods mentioned it 

 

Edit: i tried to test it yesterday but I migrated my roms to NAS and now it wont launch ps1. Have to fix that 1st

Share this post


Link to post
Share on other sites

Here's the updated 0.1.8 build: https://zerojay.com/nextcloud/index.php/s/3QfPqYM4A6ymjr4

It gives me problems, likely because my configs aren't in the proper places anymore judging from the changelog for 0.1.8, so my controllers aren't recognized as they used to be, for instance. Once I figure this out for myself, I may move on to trying to update the CONFIGFILE part of the launch intent so that 32 and 64 bit will have their own configurations respected.

I can say that MAME-2013-plus seems to play Killer Instinct far smoother on 64-bit than 32-bit. 

  • Super Like 1

Share this post


Link to post
Share on other sites

So I tried the updated apk and I can now start a game from the wheel but now when I start a game a different message pops up saying "Warning: Missing assets, use the online updater if available. I then tried to go update the assets within Retroarch but that doesn't fix anything, in fact I'm not sure where it's saving/loading anything from as I can't get to the shaders/overlays etc folders. I can at least use hot keys and overrides still load up. Maybe everything will work if both Retroarchs use their own configs.

Share this post


Link to post
Share on other sites
On 4/9/2019 at 3:07 AM, sonkun said:

So I tried the updated apk and I can now start a game from the wheel but now when I start a game a different message pops up saying "Warning: Missing assets, use the online updater if available. I then tried to go update the assets within Retroarch but that doesn't fix anything, in fact I'm not sure where it's saving/loading anything from as I can't get to the shaders/overlays etc folders. I can at least use hot keys and overrides still load up. Maybe everything will work if both Retroarchs use their own configs.

Hi, so do you resolve your problem with assets and shaders ?

I hesitate to delete the official apk and test this marevous custom build ?

thanks for your confirmation

regards

Share this post


Link to post
Share on other sites

so I made a test this new apk after deleting the former one but unfortunaly, it doesn't work. when a load a romfrom hyperspin, it continue to point to the regular retroarch 32 bits.

I have change in settings of the core :

exe=com.retroarch.aarch64/com.retroarch.browser.retroactivity.RetroActivityFuture

but no luck

little disappointed because I thank we have found the best solution.

is others guys test it with success ?

thanks for your support

 

Share this post


Link to post
Share on other sites

I forgot to mention that severals of my 64 bits folder path aren't on default location but with custom path (example: I share the system folder 32 and 64 bits with the same path).

Maybe we have to keep all default location of 64 bits folder to work

I may need to make a fresh instal of retroarch 64 bits and then, make a new test of the apk.

If someone could confirm me if it already work on fresh install  thanks

Share this post


Link to post
Share on other sites

I deleted and installed a fresh copy of retroarch 64 and tested a game, this time I don't get that message about missing assets but I still can't do much else. I can still change directory paths, save overrides but can't load shaders or overlays cause it seems to point to a empty folder. I made a video to show you what i see using the snes 9x core. I believe the only way to fix this is to have hs load configs separately from each ra version instead of having ra 64 use the folders from the 32 one.

https://streamable.com/e6gyz

Share this post


Link to post
Share on other sites

Hey everyone... quick question....I had to reset my shield TV because I downloaded a shady apk that was causing my shield to act up and it would restart regularly on its own....so anyways moving forward , I installed the 1.8 Hyperspin apk and everything seems to work as far as my bezels per game and controller configs and even loading my own custom cores within the downlaods folder...my big issue is now now matter which apk I use (retroarch1.7.6, or retroarch64 1.7.5) when I exit out a game it restart hyperspin.....it doesn't exit back to the game wheels but instead I get the hyperspin startup video then the main menu wheels.....anyone experience that or is it just me?

Share this post


Link to post
Share on other sites

My fault....I had the shield button enabled to kill apps if not currently using...turned it off and all is working now as normal ?

Share this post


Link to post
Share on other sites
On 4/27/2019 at 9:28 AM, sonkun said:

I deleted and installed a fresh copy of retroarch 64 and tested a game, this time I don't get that message about missing assets but I still can't do much else. I can still change directory paths, save overrides but can't load shaders or overlays cause it seems to point to a empty folder. I made a video to show you what i see using the snes 9x core. I believe the only way to fix this is to have hs load configs separately from each ra version instead of having ra 64 use the folders from the 32 one.

https://streamable.com/e6gyz

Did u set those folders in the directory settings?....it seems like u didnt because when u 1st opened the menu it automatically pointed to the default location in hidden files section...I can confirm that I'm using hyperspin 1.8 retroarch3264 and using retroarch 1.7.6 and also using retroarch64 1.7.5....I changed all important locations that I personally use to edit things like configs folder, overlays folder downloads folder and info folder....did it for both retroarch apks...also changed the open menu buttons to start +back and exit left and right thumbs....did it twice on both apks...1 for standalone apk and again after hyperspin launched both apks....everything is confirmed working as it should

Share this post


Link to post
Share on other sites

so I made a fresh install of retroarch 64 and it works. thanks.
The only weird things (bu you ever advice us) is that all core override and others saves are made on the 32 bits installation if you do that
n retroarch launched by hyperspin.
i hope some days you could update your marvelous APK to have 2 config files separatly.
so we could use retroarch 32 bits in GL mode and retroarch 64 bits in vulkan mode. thanks again

Share this post


Link to post
Share on other sites
On 5/4/2019 at 12:18 AM, sanchezmike01 said:

Did u set those folders in the directory settings?....it seems like u didnt because when u 1st opened the menu it automatically pointed to the default location in hidden files section...I can confirm that I'm using hyperspin 1.8 retroarch3264 and using retroarch 1.7.6 and also using retroarch64 1.7.5....I changed all important locations that I personally use to edit things like configs folder, overlays folder downloads folder and info folder....did it for both retroarch apks...also changed the open menu buttons to start +back and exit left and right thumbs....did it twice on both apks...1 for standalone apk and again after hyperspin launched both apks....everything is confirmed working as it should

That right there did the trick. I assumed it was suppose to work off of the ra 32 version folders, thanks a lot. Feels good to be able to run bsnes (balanced) and beetle psx hw right off the wheel. Are you able to get dolphin working though? For some reason it crashes every time I launch a game just from stand alone ra. I remember that core working for me about 2 months ago, got all folders in the right place unless something changed or maybe the core went bad.

Share this post


Link to post
Share on other sites
14 hours ago, sonkun said:

Are you able to get dolphin working though? For some reason it crashes every time I launch a game just from stand alone ra. I remember that core working for me about 2 months ago, got all folders in the right place unless something changed or maybe the core went bad.

It works on the Google play store build but not the newer versions of RA64. 

As I've already said it's not worth using over the dedicated dolphin emulator, due to graphics glitches in some games. 

Share this post


Link to post
Share on other sites

Hi,

another weird thing is that when I load directly reicast on 64 bits version: it's fullspeed.

but when I load reicast 64 bits through hyperspin, the gamer are slower.

I know that it read the 32 bit "retroarch-cores-option" file so I made the exact same settings as my 64 bits "retroarch-cores-option" but

the game stay slower. weird no ?

I hope You could progress in your great custom apk in order to split the config and core option files between 32 and 64 bits.

thanks

 

NEVERMIND  SORRY !

I forgot to disable rewind on the 32 bits general option files witch create slowdown. (no activate on 64 bits).

Now it work like the standalone retroarch 64 bis  thanks again ans sorry

Share this post


Link to post
Share on other sites
20 minutes ago, mikty said:

I hope You could progress in your great custom apk in order to split the config and core option files between 32 and 64 bits.

ZeroJay said he would, be patient there's no need to keep pestering about it. If you really want RA64 that badly, pay for the Arc Browser frontend and use it alongside Hyperspin. AB is being actively developed and is technically a superior frontend. This thread is meant to point out cores that are working and on which version of Retroarch.

@zerojay RetroArch now allows us to install cores manually, if we have the *.so file in the Retroarch/Downloads folder! It will make sharing the working cores much easier now, no need for you to take on the hassle of creating an online server for RA's config file to be pointed to :)

  • Like 1

Share this post


Link to post
Share on other sites

@zerojay Would be great if you could decompile and change it so it runs with retroarch.ra32

Will try myself but dont now how to get it compiled again after I have decompiled.

exe=com.retroarch.ra32/com.retroarch.browser.retroactivity.RetroActivityFuture
  • Upvote 1

Share this post


Link to post
Share on other sites

Hi guys, sorry for resurrecting an old thread, but is the hacked bersion supposed to work with RetroArch 1.9.0?

I couldn't get the version above to work with RA 1.9.0 32 bits. Nor could I get it to work with RetroArch Plus (Google Play version). RAP is supposedly 64 bits on Nvidia Shield (it installs to a location with aarch64 suffix).

The "hacked version" bellow works with the 32 bit version from RA's website: https://www.retroarch.com/?page=platforms

I can't really make neither version work with RetroArch Plus. And I can't make the version above work with RetroArch 1.9.0 32 bits.

 

Share this post


Link to post
Share on other sites
4 hours ago, HyperSeeder said:

Hi guys, sorry for resurrecting an old thread, but is the hacked bersion supposed to work with RetroArch 1.9.0?

I couldn't get the version above to work with RA 1.9.0 32 bits. Nor could I get it to work with RetroArch Plus (Google Play version). RAP is supposedly 64 bits on Nvidia Shield (it installs to a location with aarch64 suffix).

The "hacked version" bellow works with the 32 bit version from RA's website: https://www.retroarch.com/?page=platforms

I can't really make neither version work with RetroArch Plus. And I can't make the version above work with RetroArch 1.9.0 32 bits.

 

I've not done any emulation on Android in quite sometime honestly. I'd need to look at RetroArch Plus and see what cores it offers, it's new to me! I modded the Hyperspin APK to solely use RetroArch_ra32, which is why I linked the ra32 download in my thread. The 64bit versions were missing cores, yes they did Dolphin for Gamecube and Wii BUT not well enough to warrant me losing the other cores for MAME etc.

When I have some free time I'll look at RAP and decompile Hyperspin to modify it IF it's worth doing. NO I'm not faffing around trying to get BOTH 64 and 32bit versions working, it'll be for RAP 64bit. My go to frontend on Android is actually Arc Browser as it works on both my phone and STV. Yes you have to buy it BUT Freelancer (the dev) actively maintains it and has system profiles for using 32bit and 64bit version of RetroArch.

  • Like 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By edboy542
      I have attached a short video showing that the Arcade games not launching and other games launching perfectly with no problem. So when I try to launch the Arcade Game it appears to open up Retroarch, but does not load the core. Do I have to edit the Hyperspin Info Settings to make sure it is opening up the Core to launch the game? I am trying to provide all information that I can in order to get this build fully up and running. Once again thanks in advance for any assistance with this. 
    • By HyperSeeder
      HyperSpin v0.1.8 for Android
      This is an unofficial version of HyperSpin for Android able to launch all modern versions of RetroArch.
      Support topic: https://hyperspin-fe.com/forums/topic/42774-modified-hyperspin-apk-for-retroarch-works-with-all-modern-versions/
      File Information:
      HyperSpin_v0.1.8_HyperSeeder.apk
      MD5: 4692846e4fe9a90bd0da3a6cd9f10ed3
      SHA512: 2f5db6b625983c189b9f82c574bf48781921780825a38ceaf9c1094bd113545f9abdd06c5b4ac8707093e3e2ac0fc1185b9bc939f30f5ee830a41689c68e5b21
      How to configure your Settings_Android ini files:
      Main APK from RetroArch's website and Google Play Store Version:
      exe=com.retroarch/com.retroarch.browser.retroactivity.RetroActivityFuture RetroArch's website 32bit version:
      exe=com.retroarch.ra32/com.retroarch.browser.retroactivity.RetroActivityFuture RetroArch's website 64bit version and RetroArch Plus:
      exe=com.retroarch.aarch64/com.retroarch.browser.retroactivity.RetroActivityFuture Have fun!
      FAQ:
      Can I mix and match multiple RetroArch distributions?
      Yes, you just need to set different exe values for different systems.
      For instance, you can use the 64bit version of RA + Dolphin core for GameCube games (Nintendo GameCube.ini): exe=com.retroarch.aarch64/com.retroarch.browser.retroactivity.RetroActivityFuture parameters=cores/dolphin_libretro_android.so
      And the 32bit version of RA + MAME Core (MAME.ini): exe=com.retroarch.ra32/com.retroarch.browser.retroactivity.RetroActivityFuture parameters=cores/mame2010_libretro_android.so  
      Will it load separate configuration files for 32bit and 64bit versions?
      Yes, it will always load the default configuration file for each version.
      Default configuration files are in /storage/emulated/0/Android/data/[package name]/files/retroarch.cfg
      For example:
       
      /storage/emulated/0/Android/data/com.retroarch.ra32/files/retroarch.cfg  
      Can I make Hyperspin launch my own custom compiled version of RetroArch?
      Yes. As long as the package name starts with com.retroarch everything should work.
      Can I configure HyperSpin to load retroarch.cfg from a custom location?
      Not for now. I find that I can accomplish what I want with the default config file + settings overrides.
      If you have a specific use case that would benefit from this feature comment bellow and I'll see what I can do.
      How was this implemented?
      I reversed engineered the original Google Store APK using Apktool and JEB.
      You can find the two lines of code that I've modified bellow. You can use APK Studio to verify my changes.
       
       
    • By HyperSeeder
      To anyone following my posts lately, I have been working in modifying HyperSpin so that it can run all modern versions of RetroArch. I know that some of you have been waiting for it since 2019.
      Well, the wait is finally over.
      Download:
      HyperSpin_v0.1.8_HyperSeeder.apk: https://mega.nz/file/uNx0gQQA#f5ktYDOV6nMAWxatrlg6XAYz14ZMdYlkWg994s-1WDg
      MD5: 4692846e4fe9a90bd0da3a6cd9f10ed3
      SHA512: 2f5db6b625983c189b9f82c574bf48781921780825a38ceaf9c1094bd113545f9abdd06c5b4ac8707093e3e2ac0fc1185b9bc939f30f5ee830a41689c68e5b21
      How to configure your Settings_Android ini files:
      Main APK from RetroArch's website and Google Play Store Version:
      exe=com.retroarch/com.retroarch.browser.retroactivity.RetroActivityFuture RetroArch's website 32bit version:
      exe=com.retroarch.ra32/com.retroarch.browser.retroactivity.RetroActivityFuture RetroArch's website 64bit version and RetroArch Plus:
      exe=com.retroarch.aarch64/com.retroarch.browser.retroactivity.RetroActivityFuture Have fun!
      FAQ:
      Can I mix and match multiple RetroArch distributions?
      Yes, you just need to set different exe values for different systems.
      For instance, you can use the 64bit version of RA + Dolphin core for GameCube games (Nintendo GameCube.ini): exe=com.retroarch.aarch64/com.retroarch.browser.retroactivity.RetroActivityFuture parameters=cores/dolphin_libretro_android.so
      And the 32bit version of RA + MAME Core (MAME.ini): exe=com.retroarch.ra32/com.retroarch.browser.retroactivity.RetroActivityFuture parameters=cores/mame2010_libretro_android.so  
      Will it load separate configuration files for 32bit and 64bit versions?
      Yes, it will always load the default configuration file for each version.
      Default configuration files are in /storage/emulated/0/Android/data/[package name]/files/retroarch.cfg
      For example:
       
      /storage/emulated/0/Android/data/com.retroarch.ra32/files/retroarch.cfg  
      Can I make Hyperspin launch my own custom compiled version of RetroArch?
      Yes. As long as the package name starts with com.retroarch everything should work.
      Can I configure HyperSpin to load retroarch.cfg from a custom location?
      Not for now. I find that I can accomplish what I want with the default config file + settings overrides.
      If you have a specific use case that would benefit from this feature comment bellow and I'll see what I can do.
      How was this implemented?
      I reversed engineered the original Google Store APK using Apktool and JEB.
      You can find the two lines of code that I've modified bellow. You can use APK Studio to verify my changes.
       
      Has it been tested?
      Barely. I tested it with my NVIDIA Shield 2017 and 2019. It worked with all mentioned distributions, RA versions 1.9.0 and 1.9.1 How can I help?
      Test it and let me know if it works :).
      If you know someone able to get my two lines change integrated in the official build and published to the Google Play Store, please point the person to this topic. Acknowledgment: Many thanks to@zerojay, @yarrick and @Honosuseri for "hacking" their own versions of HyperSpin. While this version is my own work, I couldn't do it without the information that you all made available to the community.
×
×
  • Create New...