RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Reicast - Problems and Ideas

    Scheduled Pinned Locked Moved Ideas and Development
    x86reicast
    5 Posts 3 Posters 1.9k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • vbsV
      vbs
      last edited by

      In my adventure exploring Retropie I am currently messing around with Reicast. I am using Lubuntu x64 16.04 on an Intel NUC. I encountered several issues which lead to also some questions. Maybe I can just list them and I would be happy if someones has thoughts about it:

      Forced use of OSS on x86
      I noticed that currently Retropie forces the use of OSS as audio backend in the emulators.cfg. But the start script then uses aoss to still reroute back to alsa:

      reicast = "CON:/opt/retropie/emulators/reicast/bin/reicast.sh alsa %ROM%"
      

      Why is that? I thought that aoss was only needed for programs that do not support alsa natively. But it turned out that Reicast can use alsa directly. Also I noticed quite a noticeable peformance gain when using alsa directly as opposed to oss with aoss. So, maybe alsa could be used natively on x11?

      Source Repo
      When building Retropie on RPi then this git URL is used:
      https://github.com/RetroPie/reicast-emulator.git
      Branch: retropie

      On x86/x11 then this is used:
      https://github.com/reicast/reicast-emulator.git
      Branch: fix/softrend-fugly-casts

      Is that still the best choice for x86? That branch seems kinda old and also a bit unmaintained. Would it possibly improve x11/x86 to switch to another branch (like that "retropie" or master branch)? Also a bit related to my next question :)

      Alsa backend initialization problem
      There is this problem that prevents Reicast from correctly initializing alsa on my system (and probably also other's). I invested hours reading about alsa and debugging into alsalib and by now I am really sure that is just a code problem with Reicast. There is this uninitialized variable that is passed into alsa by pointer and it causes undefined behavior since alsalib reads from it. Well, just initializing that variable fixes it. I made a pull request about it for original Reicast:
      https://github.com/reicast/reicast-emulator/pull/986
      It is just a tiny change: int dir-> int dir = -1

      I did it just today but since Reicast seems not very well maintained currently and because there are 18 other PRs pending I don't think this will get merged. So maybe there is a chance I could get this incorporated into you Reicast fork. Of course this would only make sense when switching x86 source URL in Retropie to your Reicast fork.

      1 Reply Last reply Reply Quote 0
      • BuZzB
        BuZz administrators
        last edited by

        @gizmo98 would be best to answer your questions as the module code is mostly his.

        To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

        1 Reply Last reply Reply Quote 0
        • BuZzB
          BuZz administrators
          last edited by

          have you tried lr-reicast btw - which might be a better choice on x86 ?

          To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

          vbsV 1 Reply Last reply Reply Quote 0
          • vbsV
            vbs @BuZz
            last edited by

            @BuZz said in Reicast - Problems and Ideas:

            have you tried lr-reicast btw - which might be a better choice on x86 ?

            Thanks, good point! I tried it some time ago but it crashed right on startup. I gave it another try now and I found out that I had to put the BIOS to ~/Retropie/BIOS/dc. Without BIOS it just throws a strange "SH4ThrownException". Now it seems to start correctly.

            1 Reply Last reply Reply Quote 0
            • gizmo98G
              gizmo98 Global Moderator
              last edited by gizmo98

              Yeah. Lr-reicast is the best Solution for PCs.

              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

              Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.