Jump to content

Hyperspin modified for RetroArch 32bit (aka Retroarch_ra32)


Honosuseri

Recommended Posts

Right guys as some of you are aware Google changed how things work on the Google Play Store a while back, when we install an app it will use the 32 or 64 bit version depending on what's native to the device. As we're mainly focused on the Shield TV here on the Android part of the forum, it is a 64 bit device. This has proved to be a bit of an issue for those of us who love Retroarch as there are some serious differences between the 32bit and 64bit versions. In a nutshell currently we have access to more cores for us to play our retro systems on the 32 bit version. RetroArch provide a RetroArch_ra32.apk which is a dedicated 32bit version we can sideload/install and use, however Hyperspin is NOT setup to use this version as some of the paths changed.

So...I decompiled the Hyperspin.apk and made the necessary changes (yes including the config path) to solely use RA_32. I've done some limited testing with RA_32 (1.8.7) and it seems a okay to me (even the Daphne test core works) however I don't use screen overlays or really bother with alternate config setups (in truth I've not used the STV in many months!). Feel free to download it and test yourselves, obviously backup your essential files AND do remember the .ini files need to be adjusted to use RA32....

exe=com.retroarch/com.retroarch.browser.retroactivity.RetroActivityFuture
becomes
exe=com.retroarch.ra32/com.retroarch.browser.retroactivity.RetroActivityFuture

It's easy enough to open all your .ini files with notepad++. Use the Search and replace feature to find com.retroarch/ and replace to com.retroarch.ra32/ do this for all opened files then save all.

Those who use adopted storage it's wise to move the Retroarch_ra32 app to internal storage after installing AND before running it for the first time. Let me know how it works for you, I'll do a Youtube video to help those less experienced with setting up Hyperspin when I know it's working 100% and I have the free time.

Mega Link for Hyperspin_0.1.8_Hono.apk (https://mega.nz/file/zQNBCYKI#QVrG4uVVmvXHshl8LbosQi7LAjQmUA09R5k_YqhcMBI)
RetroArch_ra32 (1.9.0) newest stable version at time of posting (https://buildbot.libretro.com/stable/1.9.0/android/)

Link to comment
Share on other sites

1 hour ago, Honosuseri said:

Right guys as some of you are aware Google changed how things work on the Google Play Store a while back, when we install an app it will use the 32 or 64 bit version depending on what's native to the device. As we're mainly focused on the Shield TV here on the Android part of the forum, it is a 64 bit device. This has proved to be a bit of an issue for those of us who love Retroarch as there are some serious differences between the 32bit and 64bit versions. In a nutshell currently we have access to more cores for us to play our retro systems on the 32 bit version. Retroarch provide a Retroarch_ra32.apk which is a dedicated 32bit version we can sideload/install and use, however Hyperspin is NOT setup to use this version as some of the paths changed.

So...I decompiled the Hyperspin.apk and made the necessary changes (yes including the config path) to solely use RA_32. I've done some limited testing with RA_32 (1.8.7) and it seems a okay to me (even the Daphne test core works) however I don't use screen overlays or really bother with alternate config setups (in truth I've not used the STV in many months!). Feel free to download it and test yourselves, obviously backup your essential files AND do remember the .ini files need to be adjusted to use RA32....

exe=com.retroarch/com.retroarch.browser.retroactivity.RetroActivityFuture
becomes
exe=com.retroarch.ra32/com.retroarch.browser.retroactivity.RetroActivityFuture

It's easy enough to open all your .ini files with notepad++. Use the Search and replace feature to find com.retroarch/ and replace to com.retroarch.ra32/ do this for all opened files then save all.

Those who use adopted storage it's wise to move the Retroarch_ra32 app to internal storage after installing AND before running it for the first time. Let me know how it works for you, I'll do a Youtube video to help those less experienced with setting up Hyperspin when I know it's working 100% and I have the free time.

Mega Link for Hyperspin_0.1.8_Hono.apk (https://mega.nz/file/zQNBCYKI#QVrG4uVVmvXHshl8LbosQi7LAjQmUA09R5k_YqhcMBI)

Great work mate. I will try this out over the next few days and report back.

ps, I don't suppose you have the settings for Citra for 3DS now it's on Google Play ?

Thanks again for all your work.

Link to comment
Share on other sites

On 5/24/2020 at 6:16 PM, Creezz67 said:

Great work mate. I will try this out over the next few days and report back.

ps, I don't suppose you have the settings for Citra for 3DS now it's on Google Play ?

Thanks again for all your work.

If cores aren't working please check that their names haven't changed since you last setup RA and the .ini files. I look forward to hearing how it works out for you, honestly I don't use the STV much anymore. I've got a lot going on at home so my free time for testing is limited, yes even when we're in "lock down".

Regarding your P.S...I'm not a Nintendo fan and no I don't have Citra installed on the STV however you can try "exe=org.citra.citra_android/org.citra_android.ui.main.MainActivity". No guarantee it'll work the developers need to implement launch intent for the app to work with Hyperspin. I did get the Redream developer to add launch intent and tested the Dreamcast in Hyperspin with it, if you ask nicely devs tend to give their customers what they ask for.

All the best with it

Link to comment
Share on other sites

3 minutes ago, Honosuseri said:

If cores aren't working please check that their names haven't changed since you last setup RA and the .ini files. I look forward to hearing how it works out for you, honestly I don't use the STV much anymore. I've got a lot going on at home so my free time for testing is limited, yes even when we're in "lock down".

Regarding your P.S...I'm not a Nintendo fan and no I don't have Citra installed on the STV however you can try "exe=com.citro3dmans.citro/com.citro3dmans.citro.MainActivity". No guarantee it'll work the developers need to implement launch intent for the app to work with Hyperspin. I did get the Redream developer to add launch intent and tested the Dreamcast in Hyperspin with it, if you ask nicely devs tend to give their customers what they ask for.

All the best with it

Will do, not too many have changed luckily or if they have I am not using them 😀

Link to comment
Share on other sites

3 minutes ago, Creezz67 said:

Will do, not too many have changed luckily or if they have I am not using them 😀

Keep in mind the Dolphin core is only on the 64bit version, so you won't have access to it on RA_32. The Dolphin core had graphical glitches in many of the games I tried, so I used the dedicated standalone Dolphin emulator. Things might have changed though, I'm impressed with the progress they've made on the PUAE core for the Amiga.

Link to comment
Share on other sites

8 minutes ago, Honosuseri said:

Keep in mind the Dolphin core is only on the 64bit version, so you won't have access to it on RA_32. The Dolphin core had graphical glitches in many of the games I tried, so I used the dedicated standalone Dolphin emulator. Things might have changed though, I'm impressed with the progress they've made on the PUAE core for the Amiga.

I use Dolphin so that will not be an issue luckily.

Also have not tried Amiga on RetroArch. Will they launch directly from rom now ?

Link to comment
Share on other sites

1 hour ago, Creezz67 said:

I use Dolphin so that will not be an issue luckily.

Also have not tried Amiga on RetroArch. Will they launch directly from rom now ?

FYI Amiga roms are strictly speaking BIOS (kickstart) files but I know what you meant. The PUAE core supports .zip and .lha files etc. you don't really need uae & hdf files now from what I've seen with my limited testing. We still have the problem that the Hyperspin Amiga database and media naming is out of whack to the latest Retroplay WHDLoad set.

I do have a dedicated thread for the Amiga here. I need to settle on how to statically name the games and in turn the media and obviously the database entries. How they're named can help the core decide which Amiga preset to use, it does do cycle exact emulation which is awesome so games will play at the correct speed even if the Amiga preset is "too powerful" for the game. That's something UAE4ARM can NOT do so technically RetroArch is now the best emulator for the Amiga on Android.

Link to comment
Share on other sites

On 5/24/2020 at 8:21 PM, Honosuseri said:

FYI Amiga roms are strictly speaking BIOS (kickstart) files but I know what you meant. The PUAE core supports .zip and .lha files etc. you don't really need uae & hdf files now from what I've seen with my limited testing. We still have the problem that the Hyperspin Amiga database and media naming is out of whack to the latest Retroplay WHDLoad set.

I do have a dedicated thread for the Amiga here. I need to settle on how to statically name the games and in turn the media and obviously the database entries. How they're named can help the core decide which Amiga preset to use, it does do cycle exact emulation which is awesome so games will play at the correct speed even if the Amiga preset is "too powerful" for the game. That's something UAE4ARM can NOT do so technically RetroArch is now the best emulator for the Amiga on Android.

Cool, FYI just tested over 150+ wheels  using RetroArch_ra32 1.8.8 and all load perfectly. GBA,PS1,SNES,NES, Sega Genesis, MAME, Panasonic 3DO, Sega CD etc

Only stuff not working are ones I needed to load from internal drive, it can't find them, e.g. Atari 5200, VTech Creativision

Link to comment
Share on other sites

On 5/24/2020 at 8:41 PM, Creezz67 said:

Cool, FYI just tested over 200 wheels and all load perfectly. GBA,PS1,SNES,NES, Sega Genesis, MAME, Panasonic 3DO, Sega CD etc

Only stuff not working are ones I needed to load from internal drive, it can't find them, e.g. Atari 5200, VTech Creativision

Atari 5200 uses the Atari800 core which does a few Atari systems. Pretty sure that's broken on the 32bit version, if it won't play in Retroarch then Hyperspin obviously won't load it. It's part of my love/hate relationship with RetroArch. There are cases where 64bit is better BUT overall for me 32bit is more useful.

I'm not an Atari fan so it's no real issue for me, really REALLY retro games don't appeal to me. I don't emulate everything for bragging rights, I try to focus on systems and games myself and friends would play. I have tested emulators other than RA_32, Dreamcast with Redream and the Amiga with UAE4ARM both worked fine. I was pretty confident it was okay before posting it here, thank you for testing and letting me know.

Link to comment
Share on other sites

Yeah it is broken! I just got Atari 5200 working in RA_32 by manually installing the Atari800 core downloaded from here (http://buildbot.libretro.com/nightly/android/latest/armeabi/). I've done a Youtube video on how to manually install cores, I did this for the Daphne test core (I'll link the video below). The Atari 5200 games will probably fail to play first go though giving an error message. Just press back to get into the RetroArch quick menu, select options and change Atari system to 5200 and game should then spring to life. You can save the changes to the retroarch.cfg in the main menu for that change to be remembered

 

Link to comment
Share on other sites

This is great, today I tried the ra32 of retroarch before I found this, I changed in android.Manifest.xml from com.retroarch.ra32 to com.retroarch in the retroarch apk file. It worked. I really want to use both the 32 and 64 version, tried ZeroJay’s version of Hyperspin apk, that is supposed to work with both but I can’t get it to work, The retroarch version named  com.retroarch works but when trying aarch64 it loads but it doesnt find the configs correctly.

 

Link to comment
Share on other sites

On 5/30/2020 at 10:17 PM, mrfomt said:

This is great, today I tried the ra32 of retroarch before I found this, I changed in android.Manifest.xml from com.retroarch.ra32 to com.retroarch in the retroarch apk file. It worked. I really want to use both the 32 and 64 version, tried ZeroJay’s version of Hyperspin apk, that is supposed to work with both but I can’t get it to work, The retroarch version named  com.retroarch works but when trying aarch64 it loads but it doesnt find the configs correctly.

 

Yes I'm aware of ZeroJay's modded apk and guys saying it didn't work correctly with the 64bit version of RA because of the config path. He did say he would look into it BUT that was quite some time ago now. I've been saying this for a very long time, I have NO real interest in the 64 bit version. The RA devs even admitted they were having trouble finding people to compile the cores for it. I'm sure it will improve and one day we shall all want to use it by default.

I did this modification mainly for myself and a friend of mine, he put his STV inside an old skool NES console which looks pretty sweet! I have a lot going on at home, family members with terminal cancer amongst other things. I have ZERO intention of trying to get Hyperspin on Android to work with both RA 32 & 64 bit. I've made this modded apk available for those who want to solely use RetroArch_ra32. I still have my Amiga project on the go to sort the system for both PC and Android, that is more of a priority to me.

I do use the Arc Browser frontend on my STV as well as Hyperspin. AB can use both RetroArch 32 & 64 bit versions, it has premade templates for the systems or you can configure it yourself. It's actually a very good frontend which is actively developed. I use Hyperspin for "showing off" to friends, day to day use AB does the job. I can say "Sonic" with voice search and the STV shows the movie I have in my KODI library and all the Sonic games across all systems AB has in it's library. Not that I'm knocking Hyperspin, I use it mainly on PC as that can do far more systems than Android.

Link to comment
Share on other sites

keeping an eye on this. Finally got round to reinstalling Hyperspin and Retroarch on my shield and was wondering why I was getting the blsck screen in Hyperspin when launching anything from the wheels. Will give this a go now and see how far I get. Thanks

Link to comment
Share on other sites

2 hours ago, Acet said:

keeping an eye on this. Finally got round to reinstalling Hyperspin and Retroarch on my shield and was wondering why I was getting the blsck screen in Hyperspin when launching anything from the wheels. Will give this a go now and see how far I get. Thanks

You're welcome! There's not really any more for me to add to this thread, other than perhaps a Youtube video to help "noobs" installing and setting it up. RetroArch_ra32 won't be updated by the Google Play store so if you want to update, download it and sideload the newer version.

As said earlier if some systems aren't playing, do check that the core name hasn't changed since you last made the .ini file for the system. As an example the Sega Dreamcast/ Sammy Atomiswave core is now "Flycast" it's been known as "BeetleDC" and "Reicast" in the past. You do need to adjust your .ini files to correct the exe line, as shown in the first post. The parameters line states the core to use so adjust those individually if the name has changed.

All the best with it, let me know how you get on. Creezz67 said he had over 200 wheels working, I posted a "fix" for the Atari 5200 he said didn't work.
 

Link to comment
Share on other sites

11 hours ago, Honosuseri said:

You're welcome! There's not really any more for me to add to this thread, other than perhaps a Youtube video to help "noobs" installing and setting it up. RetroArch_ra32 won't be updated by the Google Play store so if you want to update, download it and sideload the newer version.

As said earlier if some systems aren't playing, do check that the core name hasn't changed since you last made the .ini file for the system. As an example the Sega Dreamcast/ Sammy Atomiswave core is now "Flycast" it's been known as "BeetleDC" and "Reicast" in the past. You do need to adjust your .ini files to correct the exe line, as shown in the first post. The parameters line states the core to use so adjust those individually if the name has changed.

All the best with it, let me know how you get on. Creezz67 said he had over 200 wheels working, I posted a "fix" for the Atari 5200 he said didn't work.
 

Just checking, so RetroArch will not try to update this version if auto updates are left on ?

Thanks again.

Link to comment
Share on other sites

I got it working, fantastic work, thanks for the guide. 

I'm now trying to see if I can run this via a samba share from my linux box (as I wanted to serve it 3 different Shields around the house).

I've managed to mount the drive on linux and create a share, which I can view fine on my Windows 10 machine. On the Shield when I click on mount storage, it doesn't find it automatically. Instead, I added it by putting in the IP address\mount point (\\192.168.X.XX\sambashare) which seems to work, as it gets added OK and registers as connected.

However, when I then try to open Hyperspin it just gives me the pop-up saying "No Hyperspin Data folder found". I can successfully browse the folders in other apps (i.e. in MAME I can find the share and add the roms path). Any clue on what I might be doing wrong?

The root of the share has the Hyperspin folder in it, so not sure why it's not being recognised, any thoughts on this? Or do I need to look at this differently where I have the hyperspin folder on each machine and then just store the artwork/videos/roms on the share?

 

Link to comment
Share on other sites

1 hour ago, Acet said:

The root of the share has the Hyperspin folder in it, so not sure why it's not being recognised, any thoughts on this? Or do I need to look at this differently where I have the hyperspin folder on each machine and then just store the artwork/videos/roms on the share?

The Hyperspin folder and media has to be on the device itself (or adopted storage) not the network iirc. You can have all the games on a NAS, you point the system .ini files to where the games are for that system with the rom path line.

Link to comment
Share on other sites

4 hours ago, Acet said:

I've managed to mount the drive on linux and create a share, which I can view fine on my Windows 10 machine. On the Shield when I click on mount storage, it doesn't find it automatically. Instead, I added it by putting in the IP address\mount point (\\192.168.X.XX\sambashare) which seems to work, as it gets added OK and registers as connected.

I am fairly certain some users have located the Hyperspin remotely with success but it depends on the path seen by the Shield. I myself have always used internal storage so can’t comment exactly. It’s worth trying a few things before moving everything to internal/adopted.

 

Hyperspin will only see the folder if it’s 1 hop. (“Storage”/sdcard , storage/emulated/0, storage/Hyperspin) some NAS devices allow you to have the Hyperspin folder exposed so the Shield sees that last path but on my synology it’s exsposed as storage/NAS/Hyperspin so is not found, where NAS is what i named my synology.

 

Have a search around the Android section, I’m sure someone wrote how they did it.

Link to comment
Share on other sites

On 6/4/2020 at 8:09 AM, Creezz67 said:

Just checking, so RetroArch will not try to update this version if auto updates are left on ?

Thanks again.

Correct, it won't auto update. I have RA_32 v1.8.5 on my Nokia 8 phone, we are now up to v1.8.8 and the Google Play Store shows no update notification for RetroArch. To update just download the latest apk file from RetroArch's stable builds. 

I've updated the OP with a link for 1.8.8. I'll try to keep it updated but it's easy enough to navigate backwards from that, to check if there is a newer version. Install the new apk over your old version, run it as you might need to update assets with the online updater BUT all your cores and settings will still be intact.

P.S Did you get Atari 5200 working with the link I posted for the alternate core?

Link to comment
Share on other sites

8 hours ago, Honosuseri said:

Correct, it won't auto update. I have RA_32 v1.8.5 on my Nokia 8 phone, we are now up to v1.8.8 and the Google Play Store shows no update notification for RetroArch. To update just download the latest apk file from RetroArch's stable builds. 

I've updated the OP with a link for 1.8.8. I'll try to keep it updated but it's easy enough to navigate backwards from that, to check if there is a newer version. Install the new apk over your old version, run it as you might need to update assets with the online updater BUT all your cores and settings will still be intact.

P.S Did you get Atari 5200 working with the link I posted for the alternate core?

Thanks for info

ps, not tried Atari 5200 again yet but will let you know once i have.

Just out of interest, can you install both versions of RetroArch (1.7.7) 32bit and this new RA_32 1.88 at the same time ? If so this would allow all systems to still work.

Link to comment
Share on other sites

6 hours ago, Creezz67 said:

Thanks for info

ps, not tried Atari 5200 again yet but will let you know once i have.

Just out of interest, can you install both versions of RetroArch (1.7.7) 32bit and this new RA_32 1.88 at the same time ? If so this would allow all systems to still work.

You're welcome! I have said this a few times, this build of Hyperspin is SOLELY for using RetroArch_ra32. It works and I am not developing it further to also use the default RetroArch or aarch64, it's a stop gap measure until the 64bit version is truly viable to be used.

RetroArch_ra32 does what I need it to do. I found an Atari 800 core you can manually install that works. I don't know what that other system is you mentioned that didn't work. Vtech Creativision is probably as old as me if not older! I doubt the games are actually any good and it's only real value would be nostalgia for people who once owned it. I dare say I could probably find a core to manually install to fix that too.

I barely use Hyperspin on my STV anymore as I've said earlier in the thread, Arc Browser can use the different RA releases. In many ways it's a far superior frontend and is actively developed getting better all the time. It has to be purchased BUT it can be shared with your family, Hyperspin does not work on phones but Arc Browser does making it more versatile. I have a lot going on at home, any free time I have now will be spent focusing on my Amiga Forever project. I already have the Amiga basically done using Arc Browser and RetroArch, that was very easy to do as it can scrape artwork and metadata online. Hyperspin is a bloody nightmare in comparison!

All the best with it, I'm sure you'll at least get the Atari 5200 up and working again very quickly.

Link to comment
Share on other sites

6 hours ago, Acet said:

Sweet, got the samba share working. I can now service the three Nvidia Shields in my house and hopefully also use the Retroarch ROMs share path for my Nintendo Switch too. 

Maybe you could explain your setup in a separate thread it may help others in the future. 😀

its a little off topic for this thread

Link to comment
Share on other sites

  • 1 month later...

Hello. I am from Spain, and a Nvidia Shield user. Install Hyperspin 0.1.8_Hono, later Retroarch_ra32_1.8.8 and configure it downloading cores, asets and other things. When I run a selected game on Hyperspin, always get a black screen. What am I doing wrong? This is my mame.ini file on settings folder:

Quote

[exe info]
path=H:\hyperspin\emulators\MAME\
rompath=Roms/MAME/roms/
userompath=true
exe=com.retroarch.ra32/com.retroarch.browser.retroactivity.RetroActivityFuture
romextension= zip
parameters=cores/mame2010_libretro.so
searchsubfolders=false
pcgame=false
winstate            = HIDDEN
hyperlaunch=true
Per_Game_Modules=false
Skipchecks=false
Hide_Cursor=use_global
Hide_Desktop=use_global
Hide_Taskbar=use_global
CPWizard_Enabled=use_global
CPWizard_Delay=use_global
CPWizard_Params=use_global
Fade_In=use_global
Fade_Out=use_global
Fade_Color=use_global
Fade_In_Duration=use_global
Fade_Out_Duration=use_global
Fade_In_Delay=use_global
7z_Enabled=use_global
7z_Extract_Dir=use_global
7z_Delete_Temp=use_global
Keymapper_Enabled=use_global
Keymapper=use_global
MultiGame_Enabled=use_global
MultiGame_Background_Color=use_global
MultiGame_Side_Padding=use_global
MultiGame_Y_Offset=use_global
MultiGame_Image_Adjust=use_global
MultiGame_Font=use_global
MultiGame_Text_1_Options=use_global
MultiGame_Text_1_Text=use_global
MultiGame_Text_2_Options=use_global
MultiGame_Text_2_Offset=use_global
MultiGame_Use_Sound=use_global
MultiGame_Sound_Frequency=use_global
MultiGame_Exit_Effect=use_global
MultiGame_Selected_Effect=use_global
MultiGame_Use_Game_Art=use_global
MultiGame_Art_Folder=use_global

[filters]
parents_only        = false
themes_only         = true
wheels_only         = false
roms_only        = false

[themes]
use_parent_vids=true
use_parent_themes=true
animate_out_default=false
reload_backgrounds=true

[wheel]
alpha=.15
small_alpha = 1
style               = normal
speed               = high
pin_center_width    = 500
horz_wheel_y        = 512
vert_wheel_position=right
y_rotation          = right
norm_large          = 360
norm_small          = 230
vert_large          = 400
vert_small          = 240
pin_large           = 500
pin_small           = 200
horz_large          = 240
horz_small          = 150
letter_wheel_x      = 800
letter_wheel_y      = 384
text_width          = 700
text_font           = Style2
small_text_width    = 260
large_text_width    = 400
text_stroke_size=6
text_stroke_color=0x000000
text_color1=0x00BFFD
text_color2=0xFFFFFF
text_color3=0x00BFFD
color_ratio=139
shadow_distance     = 0
shadow_angle        = 45
shadow_color=0x000000
shadow_alpha        = 1
shadow_blur         = 0

[pointer]
animated=true
x                   = 975
y                   = 384

[video defaults]
path=H:\hyperspin\Media\MAME\Video\

[sounds]
game_sounds         = true
wheel_click         = true

[navigation]
game_jump=50
use_indexes=false
jump_timer=400
remove_info_wheel=false
remove_info_text=true
use_last_game=true
last_game=thunderl
random_game=false

start_on_favorites=false
[Special Art A]
default=true
active=true
x=512
y=720
in=0.4
out=0.4
length=3
delay=0
type=normal
start=bottom

[Special Art B]
default=true
active=true
x=512
y=740
in=0.4
out=0.4
length=3
delay=0
type=fade
start=none

[Special Art C]
active=false
x=512
y=384
in=0
out=0
length=3
delay=10
type=fade
start=none

[Game Text]
game_text_active    = true
show_year           = true
show_manf           = true
show_description    = true
text_color1         = 0xFFFFFF
text_color2         = 0xFFFFFF
stroke_color        = 0x000000
text_font           = Style3
text1_textsize      = 26
text1_strokesize    = 7
text1_x             = 32
text1_y             = 610
text2_textsize      = 36
text2_strokesize    = 8
text2_x             = 30
text2_y             = 640

 

Thanks for the work!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...