Author Topic: Yabause On Android OS?  (Read 77478 times)

RazielDeathknight

  • Newbie
  • *
  • Posts: 2
    • View Profile
Yabause On Android OS?
« on: September 01, 2011, 05:47:17 PM »
Hello,
I've Got Xperia PLAY And I Think Yabause Will Be On Android OS Especially For Xperia PLAY
I Want Yabause On Xperia PLAY
Please Help ME :'(

Guillaume

  • Administrator
  • Sr. Member
  • *****
  • Posts: 359
    • View Profile
    • ./confiture && cake
Re: Yabause On Android OS?
« Reply #1 on: September 01, 2011, 07:13:16 PM »
I did started working on an Android port... but don't expect anything in the near future.

RazielDeathknight

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Yabause On Android OS?
« Reply #2 on: September 01, 2011, 09:14:54 PM »
i think maybe take 2 months or 3 months
yabause the best sega saturn's emulator on windows it will be on android os

Ari64

  • Administrator
  • Newbie
  • *****
  • Posts: 21
    • View Profile
Re: Yabause On Android OS?
« Reply #3 on: September 01, 2011, 09:52:56 PM »
Yabause does work on Linux/ARM, but currently only with qt or gtk.

crualfoxhound

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Yabause On Android OS?
« Reply #4 on: December 04, 2011, 05:45:41 PM »
@ Guillaume

Dont know if you heard about me before.

Im the official beta tester for yongzh on n64oid.
I been speaking to yongzh and he would like to talk to you about
If he can continue your work on a yabause emulator for android.
Thanks for your time reading my post
And hope to hear from you soon.

Ps
If you want to speak off this forum
Please P.M me.

Regards
Crualfoxhound.
« Last Edit: December 04, 2011, 05:47:48 PM by crualfoxhound »
HTC Desire hd-cm7 nightly 2.3.7
Samsung Galaxy Note - stock 2.3.5

Guillaume

  • Administrator
  • Sr. Member
  • *****
  • Posts: 359
    • View Profile
    • ./confiture && cake
Re: Yabause On Android OS?
« Reply #5 on: December 05, 2011, 10:52:27 AM »
My Android port (well... more a "proof of concept" than a port, really) is now in the Yabause svn: http://yabause.svn.sourceforge.net/viewvc/yabause?view=revision&revision=2740

Anyone interested in contributing can submit patches.

I may add some documentation on how to build it later...

crualfoxhound

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Yabause On Android OS?
« Reply #6 on: December 05, 2011, 12:19:46 PM »
My Android port (well... more a "proof of concept" than a port, really) is now in the Yabause svn: http://yabause.svn.sourceforge.net/viewvc/yabause?view=revision&revision=2740

Anyone interested in contributing can submit patches.

I may add some documentation on how to build it later...

Thanks for the svn upload.
I pass it on to yongzh.

Can you P.M me your email address
Cos yongzh want to talk to you directly.

Regards
Crualfoxhound.
HTC Desire hd-cm7 nightly 2.3.7
Samsung Galaxy Note - stock 2.3.5

Guillaume

  • Administrator
  • Sr. Member
  • *****
  • Posts: 359
    • View Profile
    • ./confiture && cake
Re: Yabause On Android OS?
« Reply #7 on: December 05, 2011, 12:28:05 PM »
I really don't like PM ;)

You can write to guillaume@yabause.org

bubblegumballoon

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Yabause On Android OS?
« Reply #8 on: January 13, 2012, 02:02:42 AM »
Awesome work on porting yabause!

Just a word of warning, yonghz ports a lot of emulators to android but he almost always makes the code closed source and then sells it so people cant get the benefits from it. Kind of annoying. :P
« Last Edit: January 13, 2012, 02:06:31 AM by bubblegumballoon »

paulscode

  • Scoobies
  • Newbie
  • *****
  • Posts: 34
    • View Profile
Re: Yabause On Android OS?
« Reply #9 on: January 13, 2012, 04:06:57 AM »
I'd like to contribute to the project by implementing a front-end/ GUI for Android, and testing/ optimizing on various devices.  I've just started setting up the project, so forgive me if this post sounds a little uninformed, haha.

I'm having a little trouble building the Android project (I'm not really used to the pre-built library concept).  I'd like to set up the Android.mk file in a more normal layout with all the source files, but I'm a little stuck on:

1) What are all the source files that must be built?  I grabbed all the ones from the main list of source files in trunk/yabause/src/Makefile.am (bios.c - yui.h) as well as the two for the ARM dynarec (sh2_dynarec/sh2_dynarec.c and sh2_dynarec/linkage_arm.s)

2) What are all the CFLAGS that must be defined?  currently I am using -DVERSION=\"0.9.10\" -DSH2_DYNAREC=1 -mcpu=cortex-a8 -mfpu=vfp -mfloat-abi=softfp

3) What (if any) LDFLAGS/ LDLIBS must be defined?

4) What data files need to be placed onto the device (or built into the APK) besides the bios and diskimage?

Alternately, if there is an easier way to build the project, I'll follow it :)  I'll get a better feel for how everything fits together as I play around with the code, but it is always nice to start out on the right track.
« Last Edit: January 13, 2012, 04:14:47 AM by paulscode »

Guillaume

  • Administrator
  • Sr. Member
  • *****
  • Posts: 359
    • View Profile
    • ./confiture && cake
Re: Yabause On Android OS?
« Reply #10 on: January 13, 2012, 08:36:51 AM »
What OS are you working on?

The current Android port in the SVN should be easy to build on a Linux box with CMake, not sure about Windows though...

paulscode

  • Scoobies
  • Newbie
  • *****
  • Posts: 34
    • View Profile
Re: Yabause On Android OS?
« Reply #11 on: January 13, 2012, 10:47:55 AM »
I'm on Ubuntu Lucid.

Guillaume

  • Administrator
  • Sr. Member
  • *****
  • Posts: 359
    • View Profile
    • ./confiture && cake
Re: Yabause On Android OS?
« Reply #12 on: January 13, 2012, 01:00:58 PM »
First, make sure that :
* you have CMake installed (apt-get install cmake)
* you have the Android sdk installed
* you have the Android ndk installed and a standalone toolchain (see STANDALONE-TOOLCHAIN.html in the ndk documentation)

Update your PATH environment variable with :
* path the standalone toochain "bin" directory
* path to the ndk top directory
* path to the sdk "tools" directory
so... something like that:
# export PATH="$PATH:path/to/your/toolchain/bin:path/to/your/ndk:path/to/your/sdk/tools"

then create a new directory and fetch the sources:
# mkdir yabause-android && cd yabause-android
# svn co https://yabause.svn.sourceforge.net/svnroot/yabause/trunk/yabause

At this step, you'll need to edit sources as the sysroot is hardcoded. In src/android/android.cmake, update the line:
SET(CMAKE_FIND_ROOT_PATH /home/guillaume/projects/android/toolchain/sysroot/usr/)
to point to your standalone toolchain (something like path/to/your/toolchain/sysroot/usr/ )

# mkdir build && cd build
# cmake ../yabause -DCMAKE_TOOLCHAIN_FILE=../yabause/src/android/android.cmake -DYAB_PORTS=android
# make

That should create the Yabause-debug.apk file.

Report any problem :)

paulscode

  • Scoobies
  • Newbie
  • *****
  • Posts: 34
    • View Profile
Re: Yabause On Android OS?
« Reply #13 on: January 14, 2012, 01:51:44 AM »
Thanks for the detailed response.  I'll let you know if I have any problems getting it going. (I'll play around with it this weekend)

I would still like to get it going as a more normal Android project rather than having the library built standalone and what-not (would make it easier to put into an Eclipse project and debug), but I'll start with CMake and figure that out first.  Once I understand the syntax, I should be able to look through the source to figure out what all would need to go into a more standard-looking Android make-file.  If that doesn't work out, I can always just develop from the command-line (that's how I've been developing my other emulator project due to a make-file bug, so it isn't completely foreign to me, just not preferred).

When I finish some of the new components, I'll post the changes here for you too check out and see if they're worth adding to the project.

paulscode

  • Scoobies
  • Newbie
  • *****
  • Posts: 34
    • View Profile
Re: Yabause On Android OS?
« Reply #14 on: January 21, 2012, 07:03:06 PM »
Report any problem :)

I'm having a little problem linking with the CD images.  When I start the emulator, it goes into the CD deck screen, and shows "Checking disk format" for a bit, then shows "TRACKS 1" and "TIME 999:59" (the time flashes on and off).  I originally thought it could be a problem with the region settings, so I tried both a North America disk and a Europe disk, but both did the same thing.  I then tried setting yinit.regionid = REGION_AUTODETECT; just to be sure, but still no change.  Here is a screen-shot for reference:



I built the Linux version just so I could do some comparison, and make sure there wasn't anything wrong with my bios or BIN/ CUE files.  I've also verified that the BIN filename references in the CUE files are correct.  In the Linux build, if I have region set correctly or set to auto detect, then both CD images work well.  If I have the wrong region set, the Linux build goes to the CD deck screen as well, but it displays a different message: "Game disc unsuitable for this system", and shows "TRACKS 2" and "TIME 59:45" (which is what you'd expect to see).  So I don't think there is anything wrong with the disk images, bios, or with region settings.  I must have something else in the settings wrong.  I have verified that the bios, cue, and bin files are in the location that I've pointed the path strings to (in yui.c).

I have not ported this to a pure Android.mk setup yet, so I'm still using the cmake procedure you outlined above to build the project (with no other changes to the code anywhere).  For reference, the only changes I made to yui.c are:
Code: [Select]
static char biospath[256] = "/mnt/sdcard/roms/saturn/bios.bin";
static char cdpath[256] = "/mnt/sdcard/roms/saturn/SonicJam.cue";
and:
Code: [Select]
yinit.regionid = REGION_AUTODETECT;
Any ideas what might be causing this behavior?  I can provide the log output if it will be helpful (I looked through it to see if there was anything I could find useful like error messages or something, but nothing really jumped out at me).
« Last Edit: January 21, 2012, 07:05:22 PM by paulscode »