flyinghead / flycast

Flycast is a multiplatform Sega Dreamcast, Naomi, Naomi 2 and Atomiswave emulator
GNU General Public License v2.0
1.36k stars 167 forks source link

Homebrew game RevolveR doesn't work with lightgun #1369

Closed Widge-5 closed 7 months ago

Widge-5 commented 7 months ago

Platform / OS / Hardware: Raspberry Pi 5, Bookworm 64 Bit, RetroPie/Retroarch , lr-flycast-dev also Raspberry Pi 4, Buster 32 Bit, RetroPie/Retroarch , lr-flycast-dev (older version)

Github hash: 195f401 (and 5ae7ac3 for comparison)

Description of the Issue

The homebrew lightgun game, "RevolveR" locks up controls when the lightgun is fired in lr-flycast-dev only. this issue is not present in libretro flycast (called lr-flycast in RetroPie-Setup). If the game is started with the Lightgun device type, you can fire only one shot, and it always hits the center of the screen, After that no further control inputs will do anything, though the game will continue playing. If the game is started with a Controller Device Type, the player can play normally by guiding a crosshair, with a standard controller but if the device type is switched mid-game to a Lightgun, the problem manifests, you only get one shot then controls lock up. Attempting to change the device type back to Controller has no effect.

Another HomeBrew game, Bloop, has a similar issue, whereby you can't even Start a game using the gun (it stays on the title screen). You can start a game with a controller and play that way, and changing the device to Lightgun gives the lightgun control of the crosshair and shots are heard when the trigger is pulled, but no shots appear to land on screen. This problem is also not present with libretro lr-flycast

Debugging Steps Tested

It seems that libretro-flycast succeeds where flycast-dev does not in this case. It would appear to me that a change to flycast sometime since this repo and libretro's forked from each other may have broken compatibility for this game.

Thank you for your time.

flyinghead commented 7 months ago

what is the source of lr-flycast? is it the old core repo: https://github.com/libretro/flycast?

Widge-5 commented 7 months ago

Yes, that's the one. The last commit there was April 2022.

Widge-5 commented 7 months ago

For clarity, lr-flycast-dev is how Retropie-Setup refers to this repo of flycast (master branch).

flyinghead commented 7 months ago

I was able to reproduce the issue and figure out the problem.

flyinghead commented 7 months ago

Should be fixed in the latest dev build

Widge-5 commented 7 months ago

Thanks @flyinghead . That commit does seem to have fixed the problem. The game plays as exactly expected now. 👍