Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Announcement

    Sorry for the recent downtime. Still much to do but we have the site updated, secure and back online.  Expect more changes.

KNOWN ISSUES: Hyperspin (for Android)


reznnate
 Share

Recommended Posts

z7jPgNL.jpg?1  Hyperspin (for Android) 

Updated 3/18/2017

New Issues

 

Known Issues - 6/10/2015

  • SWF
    • Missing swf sound
    • Slow decode speed when loading jpegs with alpha channel  (Primal Rage, King of Monsters)
    • Incorrect animation speed
      • Boot Hill, Bomb Jack, Ironman ISSOTP, Ninja Gaiden, Red Baron, etc.
    • Rendering clipped by movie bounds, wrong position
      • 1943, Enduro Race, Fever SOS, Hippodrome,  Jail Break, Jungle Hunt, Red Baron, Ninja Gaiden, SAR, Splatterhouse, Super SF2T (world), Tondemo Crisis, Wargods, etc.
    • Crashes
      • Crazy Kong, Heavy Barrel, Super Mario themes (NES/SNES), Sexy Parodius
    • Incorrect animation looping point
      • Assault, Jumping Jack, Life Force,  Metal Slug, Mighty Pang, Millipede,, Konami's Ping Pong, Rabbit Punch, R-Type, Salamander, etc.
    • Missing focal gradient support
    • Missing blend modes (corruption)
      • Galaxy Force 2, King of the Monsters, Lock-On, Night Driver, Return of Invaders, Super Bomberman2 (SNES), Windjammers
  • ANIMATIONS
    • Not yet implemented "type" animations
      • Arc Grow, Arc Shrink
      • Blur
      • Bounce, Bounce Around 3D, Bounce Random
      • Chase
      • Elastic, Elastic Bounce
      • Flag
      • Flip
      • Grow Blur, Grow Bounce
      • Pendulum
      • Pixelate, Pixelate Zoom Out
      • Rain Float
      • Scroll
      • Stripes, Stripes 2
      • Strobe
    • Not yet implemented "rest" animations
      • Squeeze
  • OTHER theme issues
    • bshape="round" unsupported
      • 1on1gov, battletoads, etc.
    • Rotation along the y-axis not perspective correct
    • Particle layer not yet implemented
  • VIDEO
    • Delay before looping on some videos
    • Potential audio corruption/clipping with video playback
    • At least one transition video MUST be copied in the frontend/video/transitions folder
  • WHEEL (features not yet implemented)
    • Missing up/down scrolling animation
    • Missing left/right skipping animation
    • Missing sound effects
    • Missing left/center wheel position
    • Missing text_stroke_size, text_stroke_color, text_color3, color_ratio
    • Crash when loading an empty wheel
    • Sub-wheel, wheel layout parameters
    • Horizontal mode
  • SPECIAL ART
    • Missing special art switching animations
  • Other missing features
    • Favorites, Genres
    • Widescreen mode
    • Render 3D models
    • Touch-screen input
    • Additional settings and configuration hook-up
    • Additional support for more Android devices
  • Upvote 1
Link to comment
Share on other sites

Indeed, there is a substantial amount of complexity around playing back .swf without relying on Adobe's Flash player.

After a year of work on this, most of the .swf issues I mention are bugs we've identified and haven't had a chance to root-cause and fix yet.

It's assumed with time and effort, most issues can be fixed but the issues that are still outstanding are likely to be tricky.

 

If you, Matt, or Rondar can shed light on ideas about special modes or features that make those .swf's different from others, that would be very helpful.

The few .remaining swf's causing a crash are the biggest worry and our theory is they might involve actionscript.

For the .swf's that have miscalculated bounding box or position, perhaps there are additional parameters in the source .swf that our parser doesn't understand yet.

 

So, if modified .swf's are possible and can address the problem soon, that would be _awesome_.   That said, many of the problematic .swf's are gorgeous so would really like to see them work and not be degraded in any way.

  • Upvote 1
Link to comment
Share on other sites

So the coder working on the OpenGL-accelerated flash renderer engine painstakingly looked through all crashing swfs above and they all have one thing in common.  They are using “Generic Vector” types. They are undocumented in the Actionscript Virtual Machine 2 (AVM2) spec and are not supported in Hyperspin for Android.    It may be possible to add them eventually but it's unlikely to happen soon.

 

So feedback to authors of crashing swfs can modify their as3 code to avoid “Generic Vector” types.   I have no experience with actionscript, but I believe they are of the form:

 

Vector.<type>

 

Also, they should also avoid “Runtime Qualified (Late) Names” as those aren’t supported (yet) either. According to the AVM2 spec, they are of the form:

 

var ns = getANamespace();

x = ns::r;

 

Or…

 

var x = getAName();

var ns = getANamespace();

w = ns::[x];

 

 

Reznnate

Link to comment
Share on other sites

Of the themes you've listed that I've done the one thing they have in common is that they use embedded graphic or movie elements within the main time line.  To use Tondemo Crisis as an example, the head is animated separately when the smoke comes out (after the zoom has happened) and then that entire element is animated rotated left/right on the main time line.

 

There's no action script in any of mine (other than stop, gotoAndPlay).

 

If you want me to send you the source Flash of any of these, then PM me.

 

EDIT : Yesterday's effort, Pulsar, has embedded graphics elements and significant chunks of masking using native Flash shapes.  Might be worth checking that out and going with that source as a test instead?

Link to comment
Share on other sites

>> EDIT : Yesterday's effort, Pulsar, has embedded graphics elements and significant chunks of masking using native Flash shapes.  Might be worth checking that out and going with that source as a test instead?

 

It looks good -- no issues.

Subzero sent a new aburner theme and it worked fine (and looks gorgeous!) as well.

  • Upvote 1
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

  • Similar Content

    • By therourke
      I have a fully working build for Commodore Amiga now on my NVIDEA Shield (2017 model). It took me a good while to get it up and running.

      I thought it might be useful to post an 'all in one place' tutorial. Thanks go to Honosuseri over in this post for convincing me it was possible.
      Commodore Amiga is infamously painful to configure on any and all emulation setups. Retroarch takes the pain out of some of this, since we don't need individual .uae files for every single game now. But there are still some hoops to jump through.
      Onto the tutorial
       
      1. Find/setup your own Hyperspin
      Hyperspin is free and available on this very website. Install the app on your NVIDEA Shield, and compile your roms and Hyperspin setup on an appropriately sized external harddrive/USB.
      As for the ROMs, videos, wheel images and all the aesthetic stuff you need to get your setup running, you will have to source that yourselves. The Hyperspin website is good for some material, emumovies for videos, and Google and Archive dot org for everything in between. 
      For this setup I used a properly named romset for Commodore Amiga in .zip format, but you can also use .lha or .hdf format. .lha is smaller in size, but all of these run pretty much the same on Retroarch now. 
      There is no need for those pesky .uae files anymore!!!!!!!!!!
      Once you have all your roms, you will need to allocate them to the right videos and images and build your .xml database. The info for how to do this is available elsewhere on this very website. I used HyperspinChecker to do this.
      Now, onto the part where we make Hyperspin and Retroarch play nicely so you can finally play your Commodore Amiga games 
      2. WHDLoad and kickrom setup (bios file preparation)
      I obviously can't link to kickroms or WHDload.hdf and some other stuff, but Google is your friend.
      You can get kickroms legally as part of the Amiga Forever app on Google Play Store for only £1.79.
      You ABSOLUTELY NEED to get hold of these EXACT kickroms:
      kick34005.A500 kick37175.A500 kick40063.A600 kick40068.A1200 Some info on kickrom file names and how to match them up correctly can be found here.
      MAKE SURE THE FILENAMES ARE PRECISE! I left one of those As in lowercase and Retroarch didn't like it.
      You also need a properly prepared WHDLoad.hdf file: ADD THESE EXACT KICKROMS TO YOUR WHDload.hdf file (guide to do this here using ADF Opus)
      Copy all these file to the external drive you are keeping your Hyperspin setup on (I made a 'bios' folder in mine for safe keeping).
      3. Retroarch Setup
      Install the latest Retroarch on your NVIDEA Shield (probably works on other Android setups too). You can do this through the Google Play store, but as of writing this, version 1.8.9_GIT definitely works.
      You will need to make sure you have setup a way to load the Retroarch main menu from within games. Go to 'Settings', 'Input', 'Hotkeys' and set the 'Menu Toggle Gamepad Combo' to something like 'Select + Start'.
      Download the latest Commodore - Amiga (P-UAE) core from within Retroarch (use 'Online Updater' menu)
      Now 'Load Core' and choose the P-UAE Core. Start the core, then immediately go back to the Retroarch menu (Start + Select). From the 'Quickmenu' select 'Options'. Change the 'Model' here to something with plenty of power like the 'A1200 (2MB + 8MB)'. Scroll down to 'WHDLoad Support' and make sure this says 'HDFs'.
      (NOTE: ONLY if that last setting doesn't work, try this: Scroll down to 'Global Boot HD' and 'WHDLoad Support' and make sure both of these are marked as 'Files'.)
      One other thing from within Retroarch: having a way to 'Quit' from within games is useful for Hyperspin. So go to 'Settings', 'Hotkeys' choose a button for 'Quit Retroarch' (I use the click of my Left Analogue, but anything will do). You may also need to mess around with button mappings, but most of this should work fine if you have a NVIDEA Shield compatible gamepad. Mouse and keyboard are also, obviously, nice additions for Amiga stuff.
      Go back to 'Quick Menu', 'Overrides' and select 'Save Core Overrides' to make sure your Retroarch Amiga setup is saved.
      Lastly, and very importantly...
      Leave Retroarch. You will need an Android directory viewing program like 'FX File Explorer' for this step. Copy the EXACT kickroms listed above and the WHDload.hdf file you created into the /Retroarch/System/ folder on the INTERNAL drive of the NVIDEA Shield.
      4. Commodore Amiga.ini Commands
      In your Hyperspin setup you should now have all your roms, videos, images, menu setup, and a Commodore Amiga.xml database file all neat and tidy.
      You now need to get Hyperspin to talk to Retroarch properly.
      Back on your PC, load your Hyperspin folder and go to the /Settings_Android/ folder.
      Create or open the Commodore Amiga.ini in a text editor. Most of the stuff in here will be the same as other systems, but you can find my ini file attached here.
      Make sure the top lines in your ini read like this:
      [exe info] path=H:\hyperspin\emulators\Commodore Amiga\ rompath=Roms/Commodore Amiga/roms userompath=true exe=com.retroarch/com.retroarch.browser.retroactivity.RetroActivityFuture romextension=zip,hdf,lha,HDF,ZIP,LHA parameters=cores/puae_libretro_android.so searchsubfolders=false pcgame=false winstate=HIDDEN hyperlaunch=true Each of these lines corresponds to your setup. So if you have your roms folder somewhere else, you need to tell the file. If you are ONLY using .zip versions of your roms, then you don't need the entire 'romextension=zip,hdf,lha,HDF,ZIP,LHA'  line - you can change this to just 'romextension=zip' and it will work fine. (But my line here covers all the possible rom extensions, so you can leave it). The 'exe' and 'parameters' entries are really important, as this tells Hyperspin to load Retroarch, and then Retroarch which core to load for Commodore Amiga.
      Save your file, and hook your Hyperspin external drive back to your NVIDEA Shield.
      5. Play some games
      Everything *should* be working now. If you are having problems with videos and roms matching up, or entries showing in the Amiga menu on your Hyperspin, then that is an issue with your original setup. There are many tutorials out there.
      I can vouch that THIS EXACT setup works great, and loads and plays most Amiga games I have thrown at it without too many glitches.
      6. Now, please answer me a Q 
      When using an external mouse in Retroarch and playing a game like Lemmings, I get TWO cursors - the in game Lemmings cursor, and the NVIDEA Shield arrow.
      Does anyone know how to get rid of this for good? Thanks
      Commodore Amiga.ini
    • 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?
      I tested it with my NVIDIA Shield 2017 and 2019. It worked with all mentioned distributions, RA versions 1.9.0 to 1.9.8 How can I help?
      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.
    • 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 Honosuseri
      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/)
    • By iamthamiz
      Hi Guys if your trying to set up M64plus FZ on android this is what i did to get my one up and running with NVida Sheild TV
       
      exe=org.mupen64plusae.v3.fzurita/paulscode.android.mupen64plusae.SplashActivity
      parameters=
      romextension= n64,z64,zip,v64
      searchsubfolders=false
       
×
×
  • Create New...