-
Notifications
You must be signed in to change notification settings - Fork 134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Android] mslug5 & kof2003 freezing #248
Comments
https://github.com/libretro/FBNeo/tree/master/src/burner/libretro#game-xxx-runs-slowly-why- I'm a bit worried about the mslug5/kof2003 issue, as far as i can tell the only difference between old code (fbalpha2012) & new code (fbneo) would be the usage of |
But they are O.K. with I5 3470 on Android. So I think the x86 core is O.K. (Not have Atom Z series devices, not sure it's O.K. or not.) What difference between x86 core & armeabi-v7a core? |
No idea, but considering all the games you mentioned run fine and generally fast on rpi3, it's not an arm issue, and considering those issues can't be reproduced either when building with clang linux, it seems like an android platform issue. Maybe |
@dinkc64 do you remember details on the systems that needed this change : finalburnneo@fbc3bbc ? |
I have another possible culprit after looking at this commit : Afaik, the author of this one is an android developper, there must a reason for him to do this change. |
@barbudreadmon |
This core doesn't exist, and never will, this repo is just a backup of the core before fbalpha standalone migrated to github. |
Is he using that alternative m68k cpu for arm? Can they try switching to musashi? :) also 334aefe8 wasn't even a valid fix, even though the previous code was implemented completely wrong to begin with. If you look in the current code, it is slightly different. |
@leoxxx i just confirmed those 2 games work fine on my android phone (with both arm & aarch64 version of retroarch), so that's obviously not a core issue. Maybe try cleaning your retroarch setup, you might have something breaking those games in there (settings, savestates, nvram, whatever ...). Otherwise that would mean Anyway, since it doesn't appear to be a core issue, i'll be closing. Edit : also got the confirmation from an android 10 user that it's working fine |
I first install on my Android 9 decive. So can't clean retroarch setup. And I install 1.8.4 after uninstall old version(1.7.5) on my Android 7.1.1 decive. |
No idea, as far as i'm concerned i consider all android devices as crap, if i had the choice i wouldn't own a smartphone at all. |
Test f37309d. Still FC retroarch. |
Don't expect any fix for your issue, it is not a core bug as i said. I might have a theory on what's happening : are you using 7z ? 7z is longer to uncompress than zip, and i heard android is a stupid piece of software that will kill an application which takes too long to respond. So make sure you are using light compression. |
Don't post illegal content. |
leoxxx can you try with zip versions of the romsets for mslug5 / kof2003 ? |
mslug5.zip romset info for mslug5 : 268-p1cr.p1, 4194304, d0466792 kof2003.zip romset info for kof2003 : 271-p1c.p1, 4194304, 530ecc14 |
Sorrry,I shouldn't up the rom files. |
I don't know, it was just a theory, and in the first place i don't think fbalpha2012 is using the same code than fbneo to access storage (fbneo is using the libretro abstraction file stuff instead of direct file access, it might cause file reading to be a bit slower). |
Not sure that'll help, but i asked around how the time before android kill an app is determined, and it seems there are several factors :
Searching on google, it seems there are a number of settings on android, in various places (battery, developper options, ...) to prevent it from closing apps in the background, maybe that could help. |
Yes, it's a bit slower(Android 4.4.4& 7.1.1 decive). But it's not slow in my Android 9 decive, load at once. Maybe the SoC(Snapdragon 855) is high performance. These 2 roms have a slow before foce close. |
@leoxxx Btw, someone mentioned on discord that the issue you are talking about is more likely to happen when running 32-bit RA+core on a 64-bit android device (not sure that's true since my old 64-bit phone can use any version without issue). Is that your case here ? |
Yes, I use the RA 32-bit. But my 4.4.4 device should be a 32-bit system. So maybe it's the RA's issue? |
Idk, i just wanted to share the information to see if that could be a workaround for you, in the first place you never mentioned you were using an old version of RA, neither a different-arch one. I think i already mentioned it : those 2 roms are in the top 10 fbneo games in terms of size (other games would be svc, samsho5, kof2002, matrim, kof2000, garou, mslug3 & kof2001), and they also use a somehow complex encryption, so they will take a longer time to render something than most, which seems to make your android devices think they must kill the app, which is clearly android bullshit imho. Also, did you give a try to the alternative jamma based romsets Anyway, i recommend using recent & same-arch RA. |
@barbudreadmon |
Yeah, i know that, that's why i said "same-arch" instead of "aarch64". So did you try RA 1.8.5 32-bits on your android 4 and RA 1.8.5 64-bits on your more recent devices to see if it works for you ? |
Try on android 4 decive, same issue. So I give up trying on other decives. |
@leoxxx please try the latest code with |
@barbudreadmon |
The buildbot finished building it around 1 hour ago, it should be available now ? |
You can download it directly from https://git.libretro.com/libretro/FBNeo/-/jobs/412418 |
I'll try it later.
|
That's unexpected, it turns out the issue is probably about the misalignment in this code (and its other copies/variations in d_neogeo.cpp) : FBNeo/src/burn/drv/neogeo/d_neogeo.cpp Lines 8668 to 8670 in 7317bb4
I've absolutely no idea why the same code works for fbalpha2012 and "fbalpha2018", neither why some android devices accept it while others don't. |
Maybe some manufacturers modify the kernel. |
That doesn't explain why it worked with older versions of our emulator |
Then I read this #711 (comment) |
About ? Edit : it was already mentioned in that other topic that the 2 "UNALIGNED" macros are as follow :
SO I REPEAT ONCE AGAIN
IS EXACTLY THE SAME AS
ALSO YOU SAID FBALPHA2018 IS FINE, AND FBALPHA2018 IS USING
|
read above ! i deleted that non-sense ! and i'm seriously getting tired of repeating always the same things ! |
Oh,they are same, I see. I don't understand these codes. So sorry. |
Also, this is the complete code behind those unaligned macros in fbalpha2012 :
and since fbalpha2012 is not defining
@dinkc64 Maybe we should implement those macros and enable |
I don't think that's the problem, we write unaligned in tons of drivers and cpu cores and they work fine. and this: |
@leoxxx could you test mslug5 with the newest core from https://git.libretro.com/libretro/FBNeo/-/jobs/412586 ? |
Tested with version 5b9be27, and the result remains:
Imo, as we have bootleg versions that work and as far as I saw there is no difference between them, this problem can be considered "solved", since it affects a specific niche of devices. |
I think we're close though, and would like to give one (or 3) more trys at finding the problem. I never recommend using bootlegs, unless there is something "special" about them - like a new feature or something. |
core: 5b9be27
kof2003 log.
@barbudreadmon |
@leoxxx, mslug5 was just a test fix, we will add it to the other broken games soon! thank you for being patient with us :) |
Now mslug5 is O.K. for me. |
So my phone doesn't crash at all, @leoxxx 's device crashed because of the misalign, and @ZacharyFoxx 's device crash for yet another reason... those android devices really are pure madness...
I removed that additional verbosity after identifying your crash though, but i'll add this back if @ZacharyFoxx is interested in fixing his issue ? i'll push a proper fix for the misalignment after testing a few things on big-endian. |
I pushed the fix, those games should now be ok on @leoxxx's device |
@barbudreadmon |
@leoxxx you can already download the new arm32 core from https://git.libretro.com/libretro/FBNeo/-/jobs/416266 . I heard cores from the online updater can take up to 3 hours before being updated. |
@barbudreadmon @dinkc64 Here is my android 9 device's log. retroarch__2021_05_28__17_00_37.log
|
Ok, i'll close this issue then |
great!! :) |
I have tested some rom with FBNeo. The result in under xlsx file.
error.xlsx
I'don't test fba2012 if FBNeo is O.K.
FBNeo for PC CPU are O.K.(I have tested in Android ,Windows7&10) But not for ARM SoC.
Note:Metal Slug 5(mslug5)&The King of Fighters 2003(kof2003)'s result:force close(It's O.K.in fba2012.) with all test ARM SoC. Other roms are O.K. only with Snapdragon 855.
Version:
fba2012: 00361b7
fbneo: 539cb5f(armeabi-v7a) 0ad0e3c(x86)
RetroArch:ra32 1.8.4
The text was updated successfully, but these errors were encountered: