JesseTG / melonds-ds

A remake of the libretro melonDS core that prioritizes standalone parity, reliability, and usability.
GNU General Public License v3.0
106 stars 14 forks source link

Touch Mode Options Don’t Function Correctly #193

Open ThisByzantineConduit opened 3 months ago

ThisByzantineConduit commented 3 months ago

What version of melonDS DS are you using?

1.1.1

Does the problem happen in standalone melonDS?

No, it's a bug specific to melonDS DS.

What happened?

The Touch Mode options behave erratically.

When selecting “Pointer” Touch Mode and using my external mouse the pointer can go out of bounds of the DS screen and become invisible, requiring some maneuvering to get it back into frame. This also causes an issue with games that use the stylus for movement because as I reach the outer edge of the screen, it will loop back around to the other side and cause the character to move erratically.

Even when the cursor is out of frame and not visible on screen, I can still move the character in games with stylus movement so it seems it’s still giving touch input even when the cursor is out of bounds.

When using Joystick Touch Mode, the cursor will stay locked to the confines of the DS screen unlike with Pointer mode, but still when moving the cursor to the outer edges and pressing, it will often register as a press on the opposite side of the screen. For example, I'm trying to run towards the left edge of the screen in Phantom Hourglass but when I reach the edge of the screen with the touch pointer it will start to make the character run right instead.

What should've happened instead?

The cursor should be locked to the confines of the DS screen in Pointer Touch mode and touch should behave as expected in both modes. When loading the same game in legacy MelonDS core this issue isn't experienced, so hopefully it's an easy fix.

Which platforms do you see the problem on?

Which versions of the OS?

SteamOS

Which libretro frontend are you using?

Latest Retroarch Stable Flatpak Release

Terms

Telraks commented 2 days ago

Would like to add to this that I'm also having a problem with touch in the core, but here it is bound to the screen correctly, but it only ever registers clicks on the top and center of the touchscreen and nowhere else independent of where the cursor is (tested on games with camera controls by touch), both on mouse and joystick. Only happens in this core. Using 1.1.3 currently

JesseTG commented 1 day ago

@Telraks That sounds like a different issue. Could you please open a new ticket, preferably with a video illustrating the behavior?