Author Topic: Interest in porting Mupen64Plus to OUYA?  (Read 4018 times)

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3185
  • Developer
    • View Profile
    • PaulsCode.Com
Interest in porting Mupen64Plus to OUYA?
« on: October 20, 2012, 01:37:22 PM »
I've been reading a lot about the open-source game console OUYA, and I'm really starting to like the idea behind this device.  I've even pre-ordered one (even though it isn't projected to be shipped until next April).  I'm considering expanding Mupen64Plus AE to allow it to be built for the OUYA as well.  The OUYA SDK isn't available yet, but it is reportedly based on the Android SDK, which means in theory anything that could be built for Android should also be portable to this platform as well.

Now the first obvious consideration is that the GUI would need significant changes, since this is not a touch-screen device, but rather it is interfaced like any console, through game controllers.  Supporting an interface like this might be a good thing even for the Android project, though, because Android is installed on all types of hardware (and this diversity will only continue to expand in the future).

Secondly, I haven't confirmed if the OUYA SDK also has an NDK counterpart, or if it can link with libraries built with the Android NDK (I would assume one or both of these are possible, but need confirmation).  This of course would be essential, since the emulator itself is written in native C/ C++.

I also don't know if the OUYA is built with GLES2 (probably) or normal OpenGL (we do have plug-ins for both, though).  I know the CPU is the Tegra 3, so we'd be using Ari64's dynarec of course, just like the Android port.

One final issue is I doubt the OUYA comes with a native SDL library installed (and the Android port would most likely not work out-of-the-box for it).  On the other hand, I am going to remove the SDL requirement from Mupen64Plus AE, so this isn't really a game-ender like it might sound at first.

So what does everyone think?  Would adding support for the OUYA be a good idea at this point, or should our focus be only on improving the Android version we have now to eventually get it to a level of compatibility where we can say we've officially progressed past the Beta testing phase?  One thought I had is that having support for OUYA built into our source code repository might bring new developers from the OUYA community on board which would have a positive impact on the emulator overall (but maybe that's just wishful thinking on my part!)
Device: Samsung Galaxy Nexus
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: 3.0.31-g396c4df (Android 4.2 Jelly Bean)

Device: Motorola Droid X
CPU: TI OMAP3630-1000, 1 GHz (single core, ARM Cortex-A8)
GPU: PowerVR SGX530, 200 MHz
RAM: 512 MB
Resolution: 480 x 854
Rom: Verizon 4.5.573.MB810 Gingerbread 2.3.34, rooted

Offline androidlove

  • bit
  • Posts: 8
    • View Profile
Re: Interest in porting Mupen64Plus to OUYA?
« Reply #1 on: October 21, 2012, 01:15:34 AM »
Thanks for showing me the OUYA. I'm so glad to know society will be going full steam ahead despite those greedy traditionalists. I absolutely think you should jump on this. This can only be the future.

However, if you could also continue with the current program, I'd be pleased as punch. I'm finding great joy in a handheld N64 that doesn't need cartridges, even though it doesn't have a real joystick.

Also, if you never went to OUYA, I'd be fine. I have a nice N64 cartridge collection to play on my TV already : )
« Last Edit: October 21, 2012, 10:38:27 PM by androidlove »

Offline littleguy

  • Developer
  • double
  • *****
  • Posts: 1490
    • View Profile
Re: Interest in porting Mupen64Plus to OUYA?
« Reply #2 on: October 22, 2012, 09:09:03 PM »
FWIW you can generally navigate all the standard Android menus with any old HID gamepad/joystick if you're on Honeycomb 3.1 or later.  Natively, the primary joystick and two of the buttons will always work like arrow keys and forward/back to navigate menus.  So I don't think there'd be much work in that department if you port to OUYA.  Also, doesn't OUYA have a touchpad built into the controller precisely to ease the transition of android apps?
2012 Nexus 7, rooted stock KitKat
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version