libretro / flycast

Flycast is a multiplatform Sega Dreamcast emulator. NOTE: No longer actively developed, use upstream repo for libretro from now on - https://github.com/flyinghead/flycast
http://reicast.com
GNU General Public License v2.0
155 stars 77 forks source link

[Linux] Device Outputs aren't being sent #1189

Open SeongGino opened 8 months ago

SeongGino commented 8 months ago

Description

*Specifically referring to device outputs, not display output. Trying to use the MAME-compatible Broadcast Digital Outputs option in Flycast does not work in RetroArch - it seemingly isn't able to open the necessary port, thus no device output data is sent (e.g. for lightgun force feedback effects, LEDs, etc.)

Expected behavior

When the network outputs option is enabled, I should be able to inspect the network traffic in localhost:8000 and see output data being sent.

Actual behavior

Port remains closed/inoperable, implying the option(s) does not even work. While I have not tested with standalone Flycast, this DOES work in standalone MAME, implying it isn't an issue with the system (unless RA/libretro needs the user to be part of a specific group for this functionality?).

Steps to reproduce the bug

  1. This issue specifically refers to Linux RetroArch, unless this also applies to Windows users
  2. Install Flycast core.
  3. In a booted game in the Flycast core, enable the "Broadcast Digital Outputs" option. Exit the core to commit the setting.
  4. Start a Naomi game in Flycast (tried hotd2, lupinsho, ninjaslt).
  5. In a terminal, type nc -v localhost 8000
  6. Observe the error localhost [127.0.0.1] 8000 (irdmi): Connection refused

Version/Commit

Environment information

Posted this issue originally in the RetroArch frontend issues (https://github.com/libretro/RetroArch/issues/15953), but boosting here to raise awareness of the problem since it directly relates to and impacts the relevant cores themselves.