Homebrew [Android] IRdA - InputRedirection client for Android

Plasmaster09

Social Justice Potato
Member
Joined
Feb 20, 2020
Messages
1,371
Trophies
1
Age
18
Location
somewhere that may or may not exist
XP
2,521
Country
United States
Well I'm still sorry it only works with hardware input (it's been over-requested that I add touch controls), but glad to hear someone still would have an use for it :)



I actually chose this Android version because I can't go all the way down to 2.3.6 due to the lack of proper joystick support, but the tablet I used in the demo video runs Android 4.0.4 (which originally came with Android 2.2.2!), so it obviously had to be low :P

I'm not sure about iOS though because I don't know how to plug a wired controller into it (I don't have an USB-to-Lightning adapter), and I'm not sure how I would distribute it because you can't just install anything on it easily. Besides, afaik you need a dev license for coding, which is sad.
last I checked, the newest major iOS version has bluetooth controller support
but yeah oof
hmmmmmm *gasps* I have an idea! If a rudimentary (simple but fast) version could be made into a web page using HTML5, it'd work on a lot of crud including iPhones!
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,654
Trophies
2
Location
rehabilitation center
XP
8,219
Country
Hungary
Yeah touch is something I'm not interested in since retroarch 3DS doesn't use it for games anyways :)

Oh no, I meant that you can't press 3DS buttons on your phone screen (like in Gameboy emulators for Android), and you instead need a physical controller to use with this program.

last I checked, the newest major iOS version has bluetooth controller support
but yeah oof
hmmmmmm *gasps* I have an idea! If a rudimentary (simple but fast) version could be made into a web page using HTML5, it'd work on a lot of crud including iPhones!

Even if I could read the controller somehow, I still have a problem: I can't send UDP packets from the browser (or at least, not to my knowledge) :(
 
  • Like
Reactions: Zense

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,654
Trophies
2
Location
rehabilitation center
XP
8,219
Country
Hungary
The code is an absolute clusterfuck. I'm not surprised there were a lot of overflow errors, it seems like I didn't know what I was doing :rofl2:

If anyone has any issues then I'll probably have to remake a big chunk of the code because it's just awful and doesn't make any sense.

https://puu.sh/FAFeI/548c504496.apk
 

Plasmaster09

Social Justice Potato
Member
Joined
Feb 20, 2020
Messages
1,371
Trophies
1
Age
18
Location
somewhere that may or may not exist
XP
2,521
Country
United States
The code is an absolute clusterfuck. I'm not surprised there were a lot of overflow errors, it seems like I didn't know what I was doing :rofl2:

If anyone has any issues then I'll probably have to remake a big chunk of the code because it's just awful and doesn't make any sense.

https://puu.sh/FAFeI/548c504496.apk
at least (from what I know) it seems to be supported on earlier versions of Android than the main one
 

Plasmaster09

Social Justice Potato
Member
Joined
Feb 20, 2020
Messages
1,371
Trophies
1
Age
18
Location
somewhere that may or may not exist
XP
2,521
Country
United States
All I did was to compile with a newer SDK, I didn't change the minimum version. It should work from Android 4.0.4 and up.
no, I mean that yours works on earlier versions that the main one (literally just a port of the standard one for pc) does- it's 4.1 and up if I remember correctly while yours works as far back as freaking jelly bean
 

Plasmaster09

Social Justice Potato
Member
Joined
Feb 20, 2020
Messages
1,371
Trophies
1
Age
18
Location
somewhere that may or may not exist
XP
2,521
Country
United States
Main one? What does "main one" mean here? I'm confused.
The "main" input redirection program. (No offense, but this... isn't the main one.) There's a different one that's basically a clean port of the PC one, which tends to be the "default" option much like the thing it's a port of.
This, however, still seems to have its advantages. It runs on anything Jelly Bean-onward, meaning it could turn even an eight-year-old phone into a portable input redirector. And it seems to have the same remaps and settings options as the other one, or at least almost all of them.
 

Zense

Well-Known Member
Member
Joined
Apr 20, 2008
Messages
1,976
Trophies
2
XP
3,949
Country
Italy
The code is an absolute clusterfuck. I'm not surprised there were a lot of overflow errors, it seems like I didn't know what I was doing :rofl2:

If anyone has any issues then I'll probably have to remake a big chunk of the code because it's just awful and doesn't make any sense.

https://puu.sh/FAFeI/548c504496.apk
Nah I've been using the one on the first post until now and it's been serving it's purpose fine :D Also thanks a lot for going through this effort! I really appreciate it.

And yeah as Plasmaster09 said it has clear advantages over input-redirection qt for android, but that's a granted since I came here in the first place.
 
Last edited by Zense,
  • Like
Reactions: Sono

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,654
Trophies
2
Location
rehabilitation center
XP
8,219
Country
Hungary
Nah I've been using the one on the first post until now and it's been serving it's purpose fine :D Also thanks a lot for going through this effort! I really appreciate it.

And yeah as Plasmaster09 said it has clear advantages over input-redirection qt for android, but that's a granted since I came here in the first place.

Oh, so that's what "the main one" is! I didn't even know it was ported to Android :wacko:
 
  • Like
Reactions: Zense

Zense

Well-Known Member
Member
Joined
Apr 20, 2008
Messages
1,976
Trophies
2
XP
3,949
Country
Italy
  • Like
Reactions: Sono

Zense

Well-Known Member
Member
Joined
Apr 20, 2008
Messages
1,976
Trophies
2
XP
3,949
Country
Italy
Oh, so that's what "the main one" is! I didn't even know it was ported to Android :wacko:
Sorry, to annoy you about this again. I was wondering if there's a way to manually change the config since I'm trying to map the cstick to the abxy buttons. I found a file called e_config in the instal directory but I wasn't able to make much sense of it.

EDIT: Actually I just found the cal.xml file so all good I think. I'll see if I'm able to do this then. Thank you!
 
Last edited by Zense,

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,654
Trophies
2
Location
rehabilitation center
XP
8,219
Country
Hungary
Sorry, to annoy you about this again. I was wondering if there's a way to manually change the config since I'm trying to map the cstick to the abxy buttons. I found a file called e_config in the instal directory but I wasn't able to make much sense of it.

EDIT: Actually I just found the cal.xml file so all good I think. I'll see if I'm able to do this then. Thank you!

I'm sorry, but I didn't make digital to be mappable to analog, and vice-versa.
 

Zense

Well-Known Member
Member
Joined
Apr 20, 2008
Messages
1,976
Trophies
2
XP
3,949
Country
Italy
Seems like I misunderstood you and even remapping them manually through the cal.xml as the abxy buttons did not work.
 
Last edited by Zense,

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,654
Trophies
2
Location
rehabilitation center
XP
8,219
Country
Hungary
Don't worry. Seeing that the cstick is mappable to the dpad I figured I'd be able to map it to the buttons. I'm gonna try later today.

Is it? I only see code for the "3rd" stick being used as the DPAD switch.

Seems like I misunderstood you and even remapping them manually through the cal.xml as the abxy buttons did not work.

I have no idea how you could do that, because you can only do buttons to buttons, and analog stick to analog stick (except the DPAD, because in Android it's also reported as an axis).
 

Zense

Well-Known Member
Member
Joined
Apr 20, 2008
Messages
1,976
Trophies
2
XP
3,949
Country
Italy
Is it? I only see code for the "3rd" stick being used as the DPAD switch.



I have no idea how you could do that, because you can only do buttons to buttons, and analog stick to analog stick (except the DPAD, because in Android it's also reported as an axis).
Basically I just tried to swap around the values for the various inputs to see if I could manually remap them but yeah that didn't work as you said it wouldn't. In the image below I tried to remap the cstick to the abxy (at least I think that is the cstick and not cpad).
cal.png

As for the mapping the cstick to the dpad as you said you can map it to the dpad as an axis, but what I'm trying to do is have the abxy mapped as the cstick.

One solution would be if I were able to map the dpad to the cstick, instead of the abxy to the cstick. The opposite where the cstick is mapped as the dpad is indeed possible, but it does not solve what I'm trying to do, which is have the cstick mapped to any other input than the cpad and cstick :P

Actually having the cpad mapped as the dpad or abxy would work as well, but I guess if that were possible then having the cstick mapped as them would be too, and it would be a bit less convoluted
 
Last edited by Zense,

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,654
Trophies
2
Location
rehabilitation center
XP
8,219
Country
Hungary

I just said that the DPAD is an "analog" stick in Android, so you could map your controller's DPAD to CPad or CStick, and sadly it doesn't work the other way around, because it's not implemented.

Also, the ckal values are special values, not keycodes, so it wouldn't work. Sadly I have to program analog-to-digital support in myself, and also digital-to-analog.
 

Zense

Well-Known Member
Member
Joined
Apr 20, 2008
Messages
1,976
Trophies
2
XP
3,949
Country
Italy
I just said that the DPAD is an "analog" stick in Android, so you could map your controller's DPAD to CPad or CStick, and sadly it doesn't work the other way around, because it's not implemented.

Also, the ckal values are special values, not keycodes, so it wouldn't work. Sadly I have to program analog-to-digital support in myself, and also digital-to-analog.
I see, but at least when running IRdA and you try to calibrate the axes, the dpad does not register and only moves between the cancel option and "waiting for input". If I understand what you're saying correctly then I should be able to map the cstick/cpad to the dpad by manually editing the cal.xml?

EDIT: Just realised you said the complete opposite :wacko:
 
Last edited by Zense,

Zense

Well-Known Member
Member
Joined
Apr 20, 2008
Messages
1,976
Trophies
2
XP
3,949
Country
Italy
I just said that the DPAD is an "analog" stick in Android, so you could map your controller's DPAD to CPad or CStick, and sadly it doesn't work the other way around, because it's not implemented.

Also, the ckal values are special values, not keycodes, so it wouldn't work. Sadly I have to program analog-to-digital support in myself, and also digital-to-analog.
Anyways don't worry about it! Basically an easier solution for what I'm trying to do, which is trying to use a 3DS as a controller for another 3DS using the input redirection feature of Rosalina, would probably be if I made a client app on the 3DS that sends its inputs via a hotspot to Rosalina's own input redirection feature. I hope it won't be too difficult and it seems very interesting for me to figure out how to do. This is just a simple way of having two player on one system with retroarch on the host system when you're away from home but have two 3ds systems available.
 
Last edited by Zense,
General chit-chat
Help Users
  • No one is chatting at the moment.
  • SylverReZ @ SylverReZ:
    Hope they made lots of spaget
  • K3N1 @ K3N1:
    Chill dog
  • SylverReZ @ SylverReZ:
    Chilli dog
  • Skelletonike @ Skelletonike:
    Damn, I'm loving the new zelda.
  • xtremegamer @ xtremegamer:
    loving the new zelda, i started a game, it was so fucking good, so i
    am waiting on my friend to get home so we can start a new one together
  • Skelletonike @ Skelletonike:
    I just dislike that they don't let me choose the voices before the game starts. Happened with botw as well, had to change to japanese and restart.
  • K3N1 @ K3N1:
    But the important question is can you choose gender
  • Skelletonike @ Skelletonike:
    Same way you can choose Gerald's gender.
  • Skelletonike @ Skelletonike:
    *Geralt, damn autocorrect.
  • Psionic Roshambo @ Psionic Roshambo:
    But can he be trans? Lol
  • K3N1 @ K3N1:
    Zelda transforms into link
  • Psionic Roshambo @ Psionic Roshambo:
    Link I'm not the princess your looking for.... *Pulls a crying game*
  • K3N1 @ K3N1:
    *skirt up* it's exactly what I always wanted
  • Skelletonike @ Skelletonike:
    Just scanned all my zelda amiibos, took a while but didn't get anything that cool, did get the lon lon ranch hylian fabrics though.
  • Skelletonike @ Skelletonike:
    It was pretty funny when I scanned wolf link and got a shit load of meat.
  • K3N1 @ K3N1:
    @Skelletonike, btw I ran that custom for mgs4 on the deck I'm amazed it got that far in game
  • K3N1 @ K3N1:
    Plug in*
  • K3N1 @ K3N1:
    Your favorite activity
  • BentlyMods @ BentlyMods:
    My fav actvity is:

    mario-dancing.gif
  • Psionic Roshambo @ Psionic Roshambo:
    Do the Mario lol
  • K3N1 @ K3N1:
    🍑
  • K3N1 @ K3N1:
    Whoever developed Bramble was smoking that good shit fucking gnomes
    K3N1 @ K3N1: Whoever developed Bramble was smoking that good shit fucking gnomes