Author Topic: Porting Yabause to Android  (Read 344230 times)

Offline trev186

  • int
  • **
  • Posts: 97
    • View Profile
Re: Porting Yabause to Android
« Reply #210 on: May 18, 2012, 12:08:01 PM »
Random thought that may be totally off....

Most of the work for the emulator is done by the processor for most apps and especially emulators.

It makes sense to me that adding sound to this emu dropped speed a lot compared to adding sound to the n64 emu. This is evident if you remember the reason disc based games exist is for the audio. Additionally the bulk of the memory on the .bin is audio. Compare to a n64 rom that is typically less that. 32 MBs cause cartridges were not audio intensive like ps1 and saturn games did.

In the early builds of psx4droid I tested for zodttd it was always a fight between balancing the audio thread right. Either u had bad auio and fast gameplay or good audio but lots of lag.

Also seeing how our cores are a lot weaker than our desktop computers we run these emulators on which is a big part of why we have speed issues s I wanted to bring up RAM usage.

I do not know a lot about how ram is used on android but my phone has up to 800 MBs out of 1 GB of free RAM at any given point. Yabause AE uses like 60 MBs on average which is tiny compared to what it uses on my pc. Would it be possible to make the emulator say offload more processing power direct to the RAM on android ? This would cut out a lot of low end users but it seems RAM is an under tapped resource here.

Additionally some phones are coming out with 2 GBs of RAM which is a lot for a phone even. I don't see my OS using any more ram so we are talking the potential of more than 1.5 GBs of free RAM.

Another benefit of ram is all of of could ,be utilized by a single ap

Whereas all emulators I use only even tap into one core and have no dual core capabilities besides FPSE. So all this dual core and quad core business is not helping us either because we are really limited to a single gpu and clock not two. This explains why u don't see a huge difference between older and newer phones.

Now of we could enable multiple cores that could be helpful but I understand that is fairly difficult and even FPSE I think only uses it to a minimal extent

Offline scorpio16v

  • long
  • ***
  • Posts: 203
    • View Profile
Re: Porting Yabause to Android
« Reply #211 on: May 18, 2012, 02:18:26 PM »
There are versions for the Pandora and Nokia N900 out. Both have sound enabled and haven't such a heavy slow down, if sound is enabled. Ofcourse both devices didn't have the power like many Androids, so framerate isn't so good as the last no-sound version, Paul did. But much faster than the sound enabled version for Android.

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: Porting Yabause to Android
« Reply #212 on: May 18, 2012, 04:30:35 PM »
I really doubt audio needs to cause such a major performance hit.  Sure it will have some effect on performance, but going from > 15 FPS to < 1FPS is huge, and more likely indicates something isn't implemented properly than a hardware concern, IMO.  I just did a monkey-copy of the code that Guillaume added without any analysis of it. when I have some time I'll see if there is any way to write it better.  I might be able to copy just the audio stuff from the Android SDL port and link with that (that's what Mupen64Plus AE uses for the audio, and it seems to perform really well).
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: Porting Yabause to Android
« Reply #213 on: May 28, 2012, 02:39:52 PM »
Does the official r2892 build have the same issue, OnijJoku?  I posted a link in this thread.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline OnijJoku

  • byte
  • *
  • Posts: 38
    • View Profile
Re: Porting Yabause to Android
« Reply #214 on: May 28, 2012, 02:59:20 PM »
Sorry! Stupid me! I didn't remember that your site warns us not to put up links of the following. Thank you and my bad. To answer your question, yeah it does have the same problem. Could it just be bios issues?
Device: T-Mobile MyTouch 4G
Resolution: 480 x 800
Chipset: Qualcomm MSM8255 Snapdragon
CPU: 1 GHz Scorpion
GPU: Adreno 205 245 MHz
RAM: 768 MB RAM

Device: Samsung Galaxy Note 3
Resolution: 1080 x 1920
Chipset: Qualcomm Snapdragon 800
CPU: Quad-core 2.3 GHz Krait 400
GPU: Adreno 330
RAM: 3 GB RAM

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: Porting Yabause to Android
« Reply #215 on: May 28, 2012, 03:01:04 PM »
Possibly, although if it worked with the earlier builds I wouldn't think that's the problem.  You could try some different ones to see, though.  I'm kind of stumped on this one though  :-\
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline OnijJoku

  • byte
  • *
  • Posts: 38
    • View Profile
Re: Porting Yabause to Android
« Reply #216 on: May 28, 2012, 03:09:19 PM »
Well thanks, let me do some trial and error. Eventually I'll figure something out.
Device: T-Mobile MyTouch 4G
Resolution: 480 x 800
Chipset: Qualcomm MSM8255 Snapdragon
CPU: 1 GHz Scorpion
GPU: Adreno 205 245 MHz
RAM: 768 MB RAM

Device: Samsung Galaxy Note 3
Resolution: 1080 x 1920
Chipset: Qualcomm Snapdragon 800
CPU: Quad-core 2.3 GHz Krait 400
GPU: Adreno 330
RAM: 3 GB RAM

Offline OnijJoku

  • byte
  • *
  • Posts: 38
    • View Profile
Re: Porting Yabause to Android
« Reply #217 on: May 28, 2012, 03:43:39 PM »
Oh wait this is different than the one on this forum, I didn't know you made an alternate version of r2892. I just thought they were both the same because you said r2892 and I remembered that the one here is r2892. Srry for my confusion, I didn't try this one yet. Thanks again!
Device: T-Mobile MyTouch 4G
Resolution: 480 x 800
Chipset: Qualcomm MSM8255 Snapdragon
CPU: 1 GHz Scorpion
GPU: Adreno 205 245 MHz
RAM: 768 MB RAM

Device: Samsung Galaxy Note 3
Resolution: 1080 x 1920
Chipset: Qualcomm Snapdragon 800
CPU: Quad-core 2.3 GHz Krait 400
GPU: Adreno 330
RAM: 3 GB RAM

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: Porting Yabause to Android
« Reply #218 on: May 28, 2012, 04:15:41 PM »
Yes, that's Guillaume's exact code without any modifications (in other words, none of the stuff I wrote, like the GUI or virtual controls)
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline OnijJoku

  • byte
  • *
  • Posts: 38
    • View Profile
Re: Porting Yabause to Android
« Reply #219 on: June 02, 2012, 04:43:11 PM »
Sorry Paul but I'm still having trouble, please could you help with this? It's about the "jap.rom" and "/mnt/sdcard/jap.rom", I followed both instruction. However, yabause say they don't see it. What am I doing wrong? This may get my phone to finally test it, but this part is annoying me. Is it my bios, or does the jap.rom have to be in a folder?
Device: T-Mobile MyTouch 4G
Resolution: 480 x 800
Chipset: Qualcomm MSM8255 Snapdragon
CPU: 1 GHz Scorpion
GPU: Adreno 205 245 MHz
RAM: 768 MB RAM

Device: Samsung Galaxy Note 3
Resolution: 1080 x 1920
Chipset: Qualcomm Snapdragon 800
CPU: Quad-core 2.3 GHz Krait 400
GPU: Adreno 330
RAM: 3 GB RAM

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: Porting Yabause to Android
« Reply #220 on: June 02, 2012, 05:15:19 PM »
You should just name your bios file "jap.rom" and stick it into the sdcard root at "/mnt/sdcard/".  Note if your device storage is set up differently (such as the Galaxy Nexus, which has "/Internal/" instead of "/mnt/sdcard/"), then Guillaume's code will not run on your device.  If you've verified that the file "/mnt/sdcard/jap.rom" is there, then check to make sure your device isn't plugged in "USB Mass Storage Device" mode.  If none of that is the problem, then there may be something wrong with your bios file, so you might want to try another one (just name it "jap.rom" and stick it in the root of the sdcard).
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline scorpio16v

  • long
  • ***
  • Posts: 203
    • View Profile
Re: Porting Yabause to Android
« Reply #221 on: June 03, 2012, 09:14:11 AM »
Is it possible to start even a game with this version, or bios only ?
Haven't searched, if you made a config file, like in previous versions.

This version runs, with sound enabled, much faster than the latest GUI version with sound.
« Last Edit: June 03, 2012, 02:35:49 PM by scorpio16v »

Offline trev186

  • int
  • **
  • Posts: 97
    • View Profile
Re: Porting Yabause to Android
« Reply #222 on: June 03, 2012, 10:51:02 AM »
So I downgraded from and ics rom to gb rom and now yabause will not work.

Others mentioned they had issues with the app closing to home . Any way around this ?

Any new progress ?

I am hoping to get the s3 soon so so hoping it will make a difference

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: Porting Yabause to Android
« Reply #223 on: June 03, 2012, 03:03:22 PM »
Sorry, this project is likely to be on the shelf for the next month or two, so nothing new from my end.  I'm not really sure why the gui would have too significant an effect, but maybe I left something else out.  When I get back to the project, I'll try starting from a clean project and start adding things to see where it breaks down.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline xperiagamer.com

  • bit
  • Posts: 3
    • View Profile
    • XperiaGamer
Re: Porting Yabause to Android
« Reply #224 on: July 15, 2012, 08:10:34 AM »
Any Progress or have you had another go Paul ? Cant wait to see a fully functional NEW emulator on the market. Great to see people thinking out of the box and not just clone what is out already. Thanks :)
Our Android Robots!!!!
All top end Xperia 2011 devices
All top end Xperia 2012 devices out
Sony Tablet S 
Asus Transformer TF101 because we have one