Wondering if you guys submitted retroarch android for approval on Ouya. https://devs.ouya.tv/developers
It hasn’t been submitted, AFAIK, but if it’s a standard Android platform, it should be fine already. I know Squarepusher isn’t planning to buy one himself but would probably do a port (assuming a specialized port is necessary) if someone were to donate one.
Umm, I just went through that ODK and there is literally no ‘SDK’ to speak of - it’s a bunch of Eclipse samples in Java containing a controller test and some Unity test.
We don’t do anything in Java other than the GUI frontend at the beginning for selecting a ROM and changing settings. I’m thinking the Ouya pad can likely be supported the same way other pads are supported right now - by somebody running it through RetroArch Android’s debug input feature, getting the HID name, getting the keycodes of the buttons and reporting them back to me.
And yeah, I am not going to buy one and can’t afford to either way. Community participation will be needed here. After the iPad purchase I am really not in a position to flaunt anymore of my own cash around. So unless somebody wants to gift one or send one over, not sure how this is going to get done.
Don’t have an ouya…actually depends on platform support and it’s not out yet for non kickstart backers. See last post for controller keys and Such in this thread: http://forums.ouya.tv/discussion/638/detecting-x360-controllers
Ouya emulator build environment: https://devs.ouya.tv/developers/docs/setup
We are not going to do ‘kickstarters’ of any kind - we won’t join that money racket game. It’s time for people to exercise those options to ‘hardware gift’ us things - the economy is getting bad, and we can’t run our own bank accounts in the red just because of RetroArch.
Anyway, the Ouya SDK seems like a big travesty - RetroArch Android is almost entirely 100% C - the only Java portions are the GUI frontend at the start which isn’t active when RetroArch Android (the actual app) is started anyway.
So that ODK seems to be of practically no use to us - there is no C-based API exposed for the joystick - besides, I am pretty sure we can get by with just getting ‘low-level’ input from the pad through InputEvent Service (if you want to call that ‘low-level’ really since it’s still a bloated Java service - I guess more low-level than this Ouya SDK).
I also don’t really like the fact that you can’t install from Google Play on their device - seems like another case of vendor lock-in to me.
Ouya is a Tegra 3, essentially same as the Nexus 7 which we know RetroArch works on it. If I can get my hands on an Ouya, I’ll sideload the device with the Android build and see what/if any changes need to be made. Happy to work on that if needed.
Just got my Ouya in and tried sideloading it. During install it just fails. I’ll try and see if I can find any errorlog.
I’ll update when I get some time.
@Phawx Ah, ok. Thanks for reporting.
If you can track down an error log and/or would like to test any potential fixes, etc., it’d probably be easiest to talk it over with the guys via IRC. Hop onto #retroarch at irc.freenode.net sometime if/when it’s convenient.
If you don’t have an IRC client, you can also use this Web-based client: http://webchat.freenode.net/
I downloaded it and installed it on my Ouya and it installed just fine. I even got it to run a Gameboy Advance game perfectly. I just need to figure out how to get the controller working with it. Any ideas?
Edit: Here’s what it gave me: HID 2: OUYA Game Controller, p: 0.
Ok. That’s good to hear, then. We’ll just have to figure out if Phawx’s failure was isolated or if some people run into issues.
As for the buttons, if you can post a log of all of the keypresses in this other thread, Squarepusher will add it to the database.
How lovely - Ouya has no Start/Select buttons.
Somebody should tell these ‘startups’ to start making sensible controllers and that, no, a ‘Start/select’ button is NOT a luxury that can be sacrificed.
I’ll just try mapping ‘Center’ to Start then.
@Kazan22
Which build did you try installing? I used this:
APK (r12) - https://anonfiles.com/file/1be573626afc … 7fe2869dda
Perhaps I got a bum download. I’ll try to verify the download before going forward.
I backed up the latest Play Store version from my phone and installed it that way.
I can install and run Retroarch on the Ouya without any real issues. The Ouya controller not being recognized is the only “issue” at the moment, but I will try using the PS3 controller later today and report whether it is recognized by Retroarch on the Ouya.
EDIT: PS3 controller works great! I was testing the PSX core on the Ouya and had no noticeable issues, so great job guys!!!
@HJRodrigo
Sweet. v0.9.9 should have Ouya controller support, but using a PS3 controller seems like a good workaround in the meantime
How’s performance with the other cores? What about audio crackling?
I will test the SNES and NES cores soon and report my findings here… Didn’t notice any crackling, but I haven’t tried many games on the PSX core.
The SNES core does not have the correct button mapping for the PSX3 controller. Triangle should be X, Circle should be A, Cross should be B, and Square should be Y. It is nearly impossible for me to test very far into any SNES game. Is there a way we can do custom button mapping for known devices?
Is this with the PS3 pad plugged into USB or is this using Dancing Pixel Studios’ IME app?
It is connected via bluetooth. I just tried it out and it worked, but I don’t know if the Ouya came with any software pre-installed to allow the PS3 controller to work right out of the box.
I was trying games that I was unfamiliar with on the PSX core so I didn’t notice it before, but the button mapping is wrong for the PSX core too. Circle is triangle, triangle is circle, square is cross, and I assume Cross now square. This might even be the same confused arrangement of buttons I was having on the SNES core. Here is the debug info:
Square------------Pad 0 : 99, ac = 0, src = 1281 Cross--------------Pad 0 : 96, ac = 0, src = 1281 Circle--------------Pad 0 : 97, ac = 0, src = 1281 Triangle-----------Pad 0 : 100, ac = 0, src = 1281 D-pad up----------Pad 0 : 19, ac = 0, src = 1281 D-pad down------Pad 0 : 20, ac = 0, src = 1281 D-pad right--------Pad 0 : 22, ac = 0, src = 1281 D-pad left----------Pad 0 : 21, ac = 0, src = 1281 Rt Shoulder--------Pad 0 : 103, ac = 0, src = 1281 Rt Trigger----------Pad 0 : 105, ac = 0, src = 1281 Lt Shoulder---------Pad 0 : 102, ac = 0, src = 1281 Lt Trigger-----------Pad 0 : 104, ac = 0, src = 1281 Rt analog Button–Pad 0 : 107, ac = 0, src = 1281 Lt analog Button–Pad 0 : 106, ac = 0, src = 1281 Start------------------Pad 0 : 108, ac = 0, src = 1281 Select----------------Exits out of the emulator When I move either analog sticks all I see is----Pad 0 : x = 0.00, y = 0.00, src = 16777232
Well all I know is that I configure it correctly and that it works correctly for regular Android devices. It might be that the Ouya does some of its own button remapping (I sure hope not).
What I also need to know there is the ‘device name’ it reports at the beginning when you first press a button on the pad in RetroArch.