Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIIU: Fix touchscreen mouse emulation #11191

Merged
merged 1 commit into from
Aug 14, 2020
Merged

WIIU: Fix touchscreen mouse emulation #11191

merged 1 commit into from
Aug 14, 2020

Conversation

gblues
Copy link
Contributor

@gblues gblues commented Aug 14, 2020

Description

The way the mouse emulation worked was to simply return a 3rd axis from the
gamepad, which the polling code updates with the touch state in real time.

Well, the code that figures out if it's a positive or negative axis was
failing because it didn't see that 3rd axis as valid. So, I added values
which allow it to be seen as valid, and voila! the touch screen input
works again.

Related Issues

resolves #10819

Reviewers

@QuarkTheAwesome

== DETAILS
The way the mouse emulation worked was to simply return a 3rd axis from the
gamepad, which the polling code updates with the touch state in real time.

Well, the code that figures out if it's a positive or negative axis was
failing because it didn't see that 3rd axis as valid. So, I added values
which allow it to be seen as valid, and voila! the touch screen input
works again.

== TESTING
Tested locally using "Beneath a Steel Sky" in ScummVM.
@inactive123 inactive123 merged commit 270d5d4 into libretro:master Aug 14, 2020
@inactive123
Copy link
Contributor

Thanks very much for getting this fixed!

@gblues gblues deleted the gblues/wiiu-fix-touchscreen branch August 14, 2020 20:00
@groelk
Copy link

groelk commented Aug 22, 2020

Many thanks for making this feature work again!
Would you share the updated core files? As the RA downloads and nightly servers are down.
Thanks

@gblues
Copy link
Contributor Author

gblues commented Aug 24, 2020

@groelk dunno about core downloads, but the nightly builds seem to be running: http://buildbot.libretro.com/nightly/nintendo/wiiu/

@vaguerant
Copy link
Contributor

vaguerant commented Aug 24, 2020

@gblues Is this expected to work in SNES cores? I tried to test this using Snes9x Current, but I'm not getting any mouse input in games that support the SNES mouse. I've switched the input to the SNES Mouse device type, but I'm not sure if there's more to do than that to get mouse support going.

EDIT: Not getting anywhere with Genesis Plus GX, either, testing Mega Drive/Genesis games with Mega Mouse support.

EDIT2: OK, testing with ScummVM, I can't actually launch any games at all, but within the ScummVM menu itself, I do have touch mouse support. Either there's additional setup needed for mouse support in other cores, or they're just not currently supported.

@Ploggy
Copy link

Ploggy commented Jan 25, 2021

I managed to get a few Cores (Gun Games) to work with the the WiiU Touchscreen!

SNES - Snes9x Current:
Enable Show Light Gun Settings (may need to restart the Core for the changes to take effect?) in Quick Menu/Options
Set light Gun Mode to "Touchscreen" (you can also hide the Crosshair too if you wish)
In Quick Menu/Controls/Port 2 Controls set Device Type to "SuperScope"

NES - FCEUmm:
Set Zapper Mode to "Touchscreen" in Quick Menu/Options (you can also hide the Crosshair too if you wish)
In Quick Menu/Controls/Port 2 Controls set Device Type to "Zapper"

Mega Drive - Genesis Plus GX:
Set Light Gun Input to "Touchscreen" in Quick Menu/Options (you can also hide the Crosshair too if you wish)
in Quick Menu/Port 2 Controls set Device Type to "MD Menacer"
(I guess this will work for MegaCD and Master System too)

Mame 2003:
I havent been able to get mame2003 to work 100%, I can get shoot to work (tapping the Screen) and Crosshair to show and move but its WAY too sensitive, moving the Crosshair just a mm will cause it to fly from one end of the touchscreen to the other :P
I've tried messing with the Input Settings both Analog Deadzone and Analog Sensitivity has no effect

While Touchscreen DOES work fine for most Cores I tested I cant get the Touchscreen to work with the Retroarch UI?

@babosvabo
Copy link

I managed to get a few Cores (Gun Games) to work with the the WiiU Touchscreen!

SNES - Snes9x Current: Enable Show Light Gun Settings (may need to restart the Core for the changes to take effect?) in Quick Menu/Options Set light Gun Mode to "Touchscreen" (you can also hide the Crosshair too if you wish) In Quick Menu/Controls/Port 2 Controls set Device Type to "SuperScope"

NES - FCEUmm: Set Zapper Mode to "Touchscreen" in Quick Menu/Options (you can also hide the Crosshair too if you wish) In Quick Menu/Controls/Port 2 Controls set Device Type to "Zapper"

Mega Drive - Genesis Plus GX: Set Light Gun Input to "Touchscreen" in Quick Menu/Options (you can also hide the Crosshair too if you wish) in Quick Menu/Port 2 Controls set Device Type to "MD Menacer" (I guess this will work for MegaCD and Master System too)

Dumb question: i can't see "options" under "quick menu" anywhere. I'm using Retroarch 1.19 and trying to setup touchpad to act as mouse in PUAE core (Amiga) on my WiiU. Any help?

@Ploggy
Copy link

Ploggy commented Mar 4, 2023

After recent updates Options has been renamed to Core Options ;)

I'm not sure the Amiga Core can use the WiiU Touchscreen as Mouse thats what this issue could hopefully fix :)
#12843

@babosvabo
Copy link

After recent updates Options has been renamed to Core Options ;)

I'm not sure the Amiga Core can use the WiiU Touchscreen as Mouse thats what this issue could hopefully fix :) #12843

Thanks for clarification
Just to add info: touchscreen also doesn't work in overlay on WiiU (or i don't know how to enable it to work).
My question is how is it possible that lightgun can be emulated with touch screen in, say, NES games on WiiU as described above, but touch doesn't work in overlay?

@Ploggy
Copy link

Ploggy commented Mar 4, 2023

Yea, Touchscreen doesn't work in the Retroarch UI at all only in those few Cores that have Lightgun support.
From what I understand in Retroarch there are 4 control types: Lightgun, Mouse, Touch and Absolute Touch and for now only Lightgun is supported on WiiU.
Once the others are added Retroarch UI/Overlays will start to work :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Touchscreen support discontinued (Wii U)
6 participants