RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    SNES MSU-1 Guide

    Scheduled Pinned Locked Moved Help and Support
    snessnes9xmsu-1msututorial
    40 Posts 10 Posters 54.7k 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.
    • E
      edale
      last edited by

      @Darksavior Insidious611 hasn't gotten me that script yet, but turns out I don't need it for this. In fact, I don't need to edit the PCM files at all. It's already been done by someone MUCH more qualified than me.

      Qwertymodo, one of the leading authorities on MSU mods, the guy that coded pretty much the only tool that lets you create MSU-1 audio without having to hex-edit the header and loop info in, the guy that made the Zelda:LttP DX mod, the guy that coded MSU-1 support into Snes9x, along with a bunch of other MSU-1 related things I likely don't know about yet... He already did it.

      Go to: https://www.romhacking.net/hacks/2483/
      (you should recognize the link, I've sent it to you before, it's the same mod you're using)

      Click download and grab that copy of the mod (97kb).

      Open the .zip, and click the readme.

      Towards the top of the readme, you'll see 2 download links labeled "Mirror 1" and "Mirror 2".

      Grab either of those, they're the fixed PMC files (~500Mb).

      You might need to re-patch the game with the updated .ips (best to do it to a fresh copy of the rom, rather than over an already patched one.), but not sure.

      DarksaviorD 1 Reply Last reply Reply Quote 0
      • DarksaviorD
        Darksavior @edale
        last edited by

        @edale That did it, thanks. That site should really change the links..

        E 1 Reply Last reply Reply Quote 0
        • E
          edale @Darksavior
          last edited by

          @darksavior First time I looked at that patch page, I thought the volume fix mentioned was a .ips adjustment like in the "for emulator" patches, but it actually mentions the new .pcm files. When I noticed that, I downloaded and checked the files and saw they were already fixed. I should have noticed that days ago.

          At least I didn't notice after I adjusted the audio on the original ones, lol.

          DarksaviorD 1 Reply Last reply Reply Quote 0
          • DarksaviorD
            Darksavior @edale
            last edited by

            @edale In surfing the zeldix site today, I did notice there's a thread with fixed audio tracks. I'll re-download the few games that have given me issues like introducing crackling into sound effects and the music just being too loud, but sounds fine.

            E 1 Reply Last reply Reply Quote 0
            • E
              edale @Darksavior
              last edited by

              @darksavior It wasn't exactly easy, but I've found that thread too. In fact, one of the sets of tracks I was fixing for Insidious had already been fixed by qwertymodo, and me pointing that out to Insidious got qwertymodo himself to show up and help us out with the normalization. Insidious now has a bastardized version of qwertymodo's script for normalizing MSU-1 PCM audio.

              I've also added a number of tracks, such as The Black Mages versions of Battle (the basic battle theme), Decisive Battle, and Dancing Mad, and getting some PCM audio to replace ambient sounds when there's a sound that's only called when no music is playing (MSU-1 chips can only stream one data line at a time, so you can't play 2 tracks of PCM audio at once), So far I've got some since white-water sounds going on the raft scenes, looking for other similar cases.

              I'll post a link to the open-beta when the release with normalized audio comes out in a few days.

              1 Reply Last reply Reply Quote 0
              • E
                edale
                last edited by

                Well... That took more than a few days... here's the "final" beta for the Dancing Mad FFVI MSU-1 mod.

                https://github.com/Insidious611/DancingMadFF6/releases

                1 Reply Last reply Reply Quote 0
                • E
                  edale
                  last edited by edale

                  With the official release of Snes9x v1.55 a week ago, the first official release of Snes9x to support MSU, the lr-snes9x emulator core for RetroPie has also been updated.

                  I'd strongly suggest everyone update (from source) their lr-snes9x on their RetroPie setup.

                  The new version has fixes for a few MSU related issues, the biggest one I'm aware of is a fix on a bit of code that actually lets music resume properly (so after a battle when you show up on the worldmap, the music will continue where it left off, rather than starting over, as one example). It actually supported it before but wasn't reading the settings properly, so resume didn't work.

                  1 Reply Last reply Reply Quote 1
                  • hooperreH
                    hooperre
                    last edited by hooperre

                    Is there a way to launch a custom launch bash file so I can call the .sfc file from my /.Legend of Zelda, The - A Link to the Past (USA)[MSU-1] folder containing all the random files? Trying to do this for organizational purposes.

                    Both of the following work when called from the command line, but not from EmulationStation:

                    #!/bin/bash
                    "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _SYS_ "snes" "/home/pi/RetroPie/roms/snes/.Legend of Zelda, The - A Link to the Past (USA)[MSU-1]/alttp_msu.sfc"
                    

                    or

                    /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-snes9x/snes9x_libretro.so --config /opt/retropie/configs/snes/retroarch.cfg "/home/pi/RetroPie/roms/snes/.Legend of Zelda, The - A Link to the Past (USA)[MSU-1]/alttp_msu.sfc" --appendconfig /opt/retropie/configs/all/retroarch.cfg
                    

                    Thanks.

                    4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                    mituM 1 Reply Last reply Reply Quote 0
                    • mituM
                      mitu Global Moderator @hooperre
                      last edited by

                      @hooperre Is the command output depending on the starting folder ? I.e. you're in the /.alttp_msu folder when running that command ?

                      hooperreH 1 Reply Last reply Reply Quote 0
                      • hooperreH
                        hooperre @mitu
                        last edited by hooperre

                        @mitu I had the folder name mixed up and it has been updated in my original post.

                        The command is being launched from the ./RetroPie/roms/snes folder. The actual alttp_msu.sfc and all the .pcm files are located within the ./RetroPie/roms/snes/.Legend of Zelda, The - A Link to the Past (USA)[MSU-1]folder.

                        I don't think it depends on the starting folder. If I just (from the command line) ran the .sh file containing either one of the blocks of code written above:
                        sudo bash home/pi/RetroPie/roms/snes/alttp_msu.sh
                        the file runs correctly, and with all the correct RetroArch configs, but this doesn't happen when launching from EmulationStation. I'm not sure if launching it from ES changes the way that RetroArch handles it somehow or something.

                        4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                        mituM 1 Reply Last reply Reply Quote 0
                        • mituM
                          mitu Global Moderator @hooperre
                          last edited by

                          @hooperre You can see the launch command used by Emulationstation by looking at the /dev/shm/runcommand.log - it should be the first line. That being said, the command you posted (using runcommand) seems like something similar to what Emulationstation would launch.
                          If the launching commands prove to be the same, try running with verbose logging when you launch from Emulationsation (by using the runcommand launch menu) and maybe there's some clue in the detailed log about what's missing.

                          1 Reply Last reply Reply Quote 0
                          • hooperreH
                            hooperre
                            last edited by hooperre

                            Ah. It's calling for the actual .sh file itself when I use the runcommandas opposed to the .sfc. Dump:

                            Executing: /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-snes9x/snes9x_libretro.so --config /opt/retropie/configs/snes/retroarch.cfg "/home/pi/RetroPie/roms/snes/alttp_msu.sh" --appendconfig /dev/shm/retroarch.cfg

                            Not sure how to get around that. I'll try the other one again.

                            The other script with verbose logging: https://pastebin.com/BuUJbxN9

                            Appears to be calling for the .sh file as well. That one makes less sense to me.

                            4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                            mituM 1 Reply Last reply Reply Quote 0
                            • mituM
                              mitu Global Moderator @hooperre
                              last edited by

                              @hooperre said in SNES MSU-1 Guide:

                              Ah. It's calling for the actual .sh file itself when I use the runcommandas opposed to the .sfc. Dump:

                              That's not correct. Did you customize the EmulationStation system config file (es_systems.cfg) and added the .sh extension as a valid ROM ? By default, .sfc is one of the included extensions, so if you have the .sfc ROM file in the folder, runcommand should invoke the correct emulator.

                              1 Reply Last reply Reply Quote 0
                              • hooperreH
                                hooperre
                                last edited by hooperre

                                I did not add .sh .SH to the es_systems.cfg.

                                The script works well in the ports folder/menu in emulationstation and will launch the MSU-1 version of the game. It appears that runcommand is ignoring the text within the file and just launching the .sh file as an accepted rom. I can't figure out a way around this and suppose I'll just have to create an extremely messy MSU-1 folder.

                                4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                                mituM 1 Reply Last reply Reply Quote 0
                                • mituM
                                  mitu Global Moderator @hooperre
                                  last edited by

                                  @hooperre Can you post the es_systems.cfg on pastebin.com to take a look ? Is your .sfc file addd in the snes folder ?

                                  hooperreH 1 Reply Last reply Reply Quote 0
                                  • hooperreH
                                    hooperre @mitu
                                    last edited by hooperre

                                    @mitu

                                    es_systems.cfg: https://pastebin.com/3V4uAygY

                                    alttp_msu.sh is located in //home/pi/RetroPie/roms/snes containing:

                                    /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-snes9x/snes9x_libretro.so --config /opt/retropie/configs/snes/retroarch.cfg "/home/pi/RetroPie/roms/snes/.Legend of Zelda, The - A Link to the Past (USA)[MSU-1]/alttp_msu.sfc" --appendconfig /opt/retropie/configs/all/retroarch.cfg

                                    And alttp_msu.sfc is located in //home/pi/RetroPie/roms/snes/.Legend of Zelda, The - A Link to the Past (USA)[MSU-1].

                                    4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                                    1 Reply Last reply Reply Quote 0
                                    • mituM
                                      mitu Global Moderator
                                      last edited by

                                      According to your config file, the snes system doesn't launch .sh files

                                       
                                        <system>
                                          <name>snes</name>
                                          <fullname>Super Nintendo</fullname>
                                          <path>/home/pi/RetroPie/roms/snes</path>
                                          <extension>.bin .smc .sfc .fig .swc .mgd .zip .7z .BIN .SMC .SFC .FIG .SWC .MGD .ZIP .7Z</extension>
                                          <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ snes %ROM%</command>
                                          <platform>snes</platform>
                                          <theme>snes</theme>
                                        </system>
                                      

                                      but it should be able to launch .sfc files. I don't understand how it launched runcommand with a .sh file.

                                      1 Reply Last reply Reply Quote 0
                                      • J
                                        joelkolb
                                        last edited by

                                        @hooperre I was trying to do the same thing and I recently got it all sorted out. I described what I did to get it all working nice and clean in another thread.

                                        Check it out here: Load NON-PC rom with a script?

                                        hooperreH 1 Reply Last reply Reply Quote 0
                                        • hooperreH
                                          hooperre @joelkolb
                                          last edited by hooperre

                                          @joelkolb Nice! They've been in my ports folder! Thanks!

                                          4B ~ RPi PSU 5.1V / 3.0A ~ 32GB SanDisk microSD ~ 128GB USB

                                          AddisonA 1 Reply Last reply Reply Quote 0
                                          • AddisonA
                                            Addison @hooperre
                                            last edited by

                                            Tagged for later reading.

                                            1 Reply Last reply Reply Quote 0
                                            • F facelikebambi referenced this topic on
                                            • 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.