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

    Development of module-script generator for lr-mess, lr-mame and mame standalone

    Scheduled Pinned Locked Moved Ideas and Development
    developmentlr-messmamelr-mamescripts
    2.2k Posts 36 Posters 6.4m 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.
    • F
      Folly @duglor
      last edited by Folly

      @duglor

      Well, there is support for bbc micro on mame/lr-mess.
      However there are many games that will not run on it.

      In the past I made some module-scripts that use other emulators like you mentioned the one for electron.
      Sadly everything in linux world is going quick and compiling older source code on newer linux/gcc will not work anymore.
      That is probably the cause why my bbcmicro and electron scripts do not work correctly anymore.
      Sadly I have too little knowledge to fix these problems for newer linux/gcc.
      So in time these emulators can't be used anymore unless somebody has the knowledge to fix these older emulator sources.

      Remember what I told you about fmtowns.
      Try to do the same with bbc micro.

      duglorD 2 Replies Last reply Reply Quote 1
      • duglorD
        duglor @Folly
        last edited by

        @Folly Thanks for the tip. Yes, I remember about the fmtowns. Off hand , do you know if Boffin or Citadel will run on the lr-mess mame bbcmicro? Those are the main two I wanted to play on the pi, but i'll play it on windows if i must . Also to make those work , what is the bios i need for that if you know? Be well and :D Take care!

        F 1 Reply Last reply Reply Quote 0
        • duglorD
          duglor @Folly
          last edited by

          @Folly thank you

          F 3 Replies Last reply Reply Quote 0
          • F
            Folly @duglor
            last edited by Folly

            @duglor

            These are the systems you can choose from :

            pi@Bullseye-VM:~$ cat '/opt/retropie/emulators/mame/mame0253_systems_sorted_info' |grep "BBC Micro"
            Driver bbca (BBC Micro Model A): @computer@good@home_system@non-arcade
            Driver bbcb (BBC Micro Model B): @computer@forum@good@home_system@non-arcade
            Driver bbcb_de (BBC Micro Model B (German)): @computer@good@home_system@non-arcade
            Driver bbcb_no (BBC Micro Model B (Norway)): @computer@good@home_system@non-arcade
            Driver bbcb_us (BBC Micro Model B (US)): @computer@good@home_system@non-arcade
            Driver bbcbp (BBC Micro Model B+ 64K): @computer@good@home_system@non-arcade
            Driver bbcbp128 (BBC Micro Model B+ 128K): @computer@good@home_system@non-arcade
            
            pi@Bullseye-VM:~$ cat '/opt/retropie/emulators/mame/mame0253_systems_sorted_info' |grep "BBC Master"
            Driver bbcm (BBC Master 128): @computer@good@home_system@non-arcade
            Driver bbcm512 (BBC Master 512): @computer@good@home_system@non-arcade
            Driver bbcmaiv (BBC Master AIV): @computer@home_system@non-arcade
            Driver bbcmarm (BBC Master (ARM Evaluation)): @computer@home_system@non-arcade
            Driver bbcmc (BBC Master Compact): @computer@good@home_system@non-arcade
            Driver bbcmc_ar (BBC Master Compact (Arabic)): @computer@good@home_system@non-arcade
            Driver bbcmet (BBC Master ET): @computer@good@home_system@non-arcade
            Driver bbcmt (BBC Master Turbo): @computer@good@home_system@non-arcade
            
            1 Reply Last reply Reply Quote 1
            • F
              Folly @duglor
              last edited by Folly

              @duglor

              Both games are in the hash table.
              You can find in which they are by doing, for example :

              pi@Bullseye-VM:~$ cd '/opt/retropie/emulators/mame/hash' 
              pi@Bullseye-VM:/opt/retropie/emulators/mame/hash$ grep -r Boffin
              bbc_cass.xml:		<description>Boffin</description>
              bbc_cass.xml:		<description>Boffin 2</description>
              electron_cass.xml:		<description>Boffin</description>
              

              Then look into the bbc_cass.xml file and you will see that it probably will run as there is not a mentioning of "not supported".
              For Citadel it is the same.
              The load command is also found in the hash table for Boffin :
              <info name="usage" value="Load with *RUN" />

              Otherwise look in the page of @dmmarti :
              https://docs.google.com/spreadsheets/d/1AQ28J9OUKg55R3d-TZkWO3GH50KjC2hHteCP1Bx59Ns/edit#gid=0

              1 Reply Last reply Reply Quote 1
              • F
                Folly @duglor
                last edited by Folly

                @duglor said in Development of module-script generator for lr-mess, lr-mame and mame standalone:

                what is the bios i need for that if you know?

                Decide what driver you want to use.
                Then use the same trick that I told you about fmtowns.
                Bios files are found in the mame-merged romset (arcade game bios files + non-arcade bios files)
                Cass files can be found in the bbc_cass.zip from mame-sl (sl = softlist = software list)

                1 Reply Last reply Reply Quote 1
                • F
                  Folly @duglor
                  last edited by Folly

                  @duglor

                  I used bbcb and both games worked.
                  load command for boffin is :
                  *TAPE
                  *RUN

                  For citadel it is :
                  *TAPE
                  CHAIN ""

                  Use "page-down" to speed up loading in mame. (or space in lr-mess)

                  duglorD 1 Reply Last reply Reply Quote 1
                  • duglorD
                    duglor @Folly
                    last edited by

                    @Folly Yep. Both games worked here too! Thanks a ton for your help. If not for you, I probably would not have 4 systems on the pi, and so many games. THANKS!!!!!!!!!!!!!!!!!!!!!!

                    DTEAMD 1 Reply Last reply Reply Quote 1
                    • DTEAMD
                      DTEAM @duglor
                      last edited by DTEAM

                      MAME 0.256 is release

                      New working systems

                      Addometer Company Addometer Calculator [hap, Sean Riddle]
                      Lakeside Strobe [hap, Sean Riddle]
                      Mortal Race [Museo del Recreativo, David Haywood, ClawGrip]
                      Player's Edge Plus (X000014P+XP000055) Standard Draw Poker [Brian Troha]
                      Player's Edge Plus (X000127P+XP000038) Deuces Wild Poker [Brian Troha]
                      Player's Edge Plus (X002004P+XP000038) Double Double Bonus Poker [Brian Troha]
                      Player's Edge Plus (X002046P+XP000038) Ace$ Bonus Poker [Brian Troha]
                      Systemhuset / Loproc Conchess Plymate Glasgow Plus (set 1) [Mr. Lars]
                      Tiger Electronics Finger Bowl [hap, Sean Riddle]
                      Yamaha DD-9 Digital Percussion [BCM, Devin Acker]

                      nothing for us
                      Maybe Tiger Electronics Finger Bowl . Doesn't look easily playable with a gamepad or a keyboard

                      F 1 Reply Last reply Reply Quote 1
                      • F
                        Folly @DTEAM
                        last edited by Folly

                        @DTEAM

                        Indeed not much new for us.
                        I will do an easy update of the database or skip updating to 256.

                        I have compiled some mame binaries for rpi0 / x86 / x86_64.
                        (rpi0 will only do channelf, apfm1000 and svmu at around 100% for now)
                        I will probably add them into the "wip test" script.
                        What do you think, would that be an interesting "addon" ?

                        I also tried the first lr-mess0255.
                        Probably something to share too in a future script.
                        Somehow the progress of lr-mess seems to become very weak.
                        Added some comments in the pull-request today :
                        https://github.com/libretro/mame/pull/376

                        DTEAMD 1 Reply Last reply Reply Quote 1
                        • DTEAMD
                          DTEAM @Folly
                          last edited by

                          @Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:

                          I will probably add them into the "wip test" script.
                          What do you think, would that be an interesting "addon" ?

                          Good idea

                          1 Reply Last reply Reply Quote 1
                          • F
                            Folly
                            last edited by Folly

                            Here some information about lr-mame / lr-mess :

                            • lr-mame / lr-mess source has been updated to 0255
                            • and compiling for arcade and mess sub-targets has been implemented again

                            Hopefully everything will work like it did before.

                            For those who still want to play the arcade games :

                            • cave's akai katana
                            • dodonpachi saidojou

                            Then be sure to make a backup of the lr-mame0251 mamearcade_libretro.so as @HoJo215 described over here.

                            1 Reply Last reply Reply Quote 2
                            • DTEAMD DTEAM referenced this topic on
                            • F Folly referenced this topic on
                            • F Folly referenced this topic on
                            • F
                              Folly
                              last edited by Folly

                              Some latest news about mame / lr-mame / lr-mess :

                              All binaries in retropie are now on 0256.
                              The lr-mame 0256 binary has the issue that vertical (3:4) games, like galaga are somehow wrongly displayed in rotated mode.
                              The lr-mame 0251 binary did not have this issue.
                              Not sure yet where to fix or disable this rotation.
                              The lr-mess 0256 binary has the issue that many handhelds run far too slow.

                              Hopefully the issues will be solved in the future.
                              The advice is not to update or certainly backup your old binaries so you can turn back to an older ones.

                              For now I will not update the script until, hopefully, better lr-mame / lr-mess versions come out.

                              F 1 Reply Last reply Reply Quote 1
                              • F
                                Folly @Folly
                                last edited by Folly

                                @Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:

                                The lr-mame 0256 binary has the issue that vertical (3:4) games, like galaga are somehow wrongly displayed in rotated mode.
                                Not sure yet where to fix or disable this rotation.

                                RetroArch has the default core option :
                                mame_rotation_mode = "libretro"
                                (choices with older RetroArch are : libretro|internal|none )
                                Setting rotation mode to internal will fix the problem for a non rotating screen.
                                ( strange but setting it to none doesn't help, it will still rotate )

                                Newer ReatroArch versions seem to have more options which has been comitted to lr-mame / lr-mess :
                                mame_rotation_mode = "libretro"
                                (choices with newer RetroArch seem to be : libretro|internal|tate-rol|tate-ror|none )

                                The mame2003-plus doc describes the TATE mode :
                                From the Japanese 縦 (ta-te) meaning "vertical", TATE Mode renders vertical games lengthwise along the display. This mode is intended for use with rotating monitors and portable devices that can make the full use of their viewable area for games which used vertical monitors

                                Presumably "tate-rol|tate-ror" will force to rotate to 1 specific direction whereas "libretro" depends on the how the game wants to rotate.

                                Overall this could somehow be an improvement although rotation is now enabled by default in "libretro" rotation mode.

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

                                  @Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:

                                  Presumably "tate-rol|tate-ror" will force to rotate to 1 specific direction whereas "libretro" depends on the how the game wants to rotate.

                                  More likely the libretro option will obey the video rotation parameters from RetroArch's config (i.e. per-game/system overrides that might rotate the screen)

                                  F 1 Reply Last reply Reply Quote 0
                                  • F
                                    Folly @mitu
                                    last edited by

                                    @mitu said in Development of module-script generator for lr-mess, lr-mame and mame standalone:

                                    More likely the libretro option will obey the video rotation parameters from RetroArch's config (i.e. per-game/system overrides that might rotate the screen)

                                    Indeed, seems to be a better explanation ;-)

                                    jamrom2J 1 Reply Last reply Reply Quote 0
                                    • jamrom2J
                                      jamrom2 @Folly
                                      last edited by

                                      @Folly Hi. Been a while, but I'm still hanging around and watching this script continue to develop. I recently (finally) bought a Pi4 for a sensible price and am in the middle of doing a build.

                                      I loaded the mamedev.sh and working with the classich games. Already I see a problem that my Pi3b+ didn't have with the older version of the script I have loaded.

                                      The classich games seem to have issues with the sprites not being displayed properly. I hear sounds, and I can hear that input is accepted, but the screen just loads up with more sprites.

                                      This goes with the lr-mame native mame choices. The games were updated to the mame24* version, so I don't see it as a rom issue. I had the same results with older rom versions I used as well.

                                      Thanks in advance.

                                      F 2 Replies Last reply Reply Quote 0
                                      • F
                                        Folly @jamrom2
                                        last edited by Folly

                                        @jamrom2

                                        I doubt that it's due to my script.
                                        More likely that it's due to lr-mess on which classich hanhelds will run.
                                        Can you see which versions for standalone mame / lr-mess do you use right now ?
                                        Which "classich" game(driver) are you trying ?
                                        Does the "classich" game(driver) run with standalone mame ?

                                        Edit :
                                        I tried cgalaxn on :

                                        • standalone mame 0256
                                        • lr-mess 0244, 0251 and 0256

                                        cgalaxn failed on all except 0244.
                                        So it's almost certainly an issue with mame / lr-mess or the created 32 bits binaries.
                                        More investigation is needed but it could be that some of these classich games are broken just like others from version 0251.
                                        You can read more about it here.
                                        It explains that a flag for 32 bits binary compilation has been added for version 0257.
                                        Could be that this fixes these issues.

                                        (solved : in the end the rom needed to be updated)

                                        I have place my working lr-mess0244 binary on my google-drive :
                                        https://drive.google.com/drive/folders/1q_GykUt8yXsCTrhvL-ihZpAx8Dnj-4AM
                                        (so you can manually replace it if you want and able to)

                                        Edit 2:
                                        I tried cgalaxn on :

                                        • standalone mame 0252 (x86_64 debian 11)
                                        • lr-mess 0255 (x86_64 debian 11)

                                        cgalaxn does indeed correctly work on 64 bits (x86_64).
                                        lr-mess however doesn't run at full speed with this driver but that's a known issue.

                                        (perhaps I used a good updated rom with this test)
                                        (solved : in the end the rom needed to be updated)

                                        Edit 3 :
                                        I tried cgalaxn on :

                                        • lr-mess 0250

                                        My cgalaxn.7z did not work however when I used the new cgalaxn.zip it worked so the romfile has been changed.

                                        jamrom2J 1 Reply Last reply Reply Quote 1
                                        • jamrom2J
                                          jamrom2 @Folly
                                          last edited by jamrom2

                                          @Folly I agree. It looks like a lot of stuff seems to be having issues. I even tried the auto-loading option on the Coco2 and Coco3, they seem to either fail on every choice, or add in more characters to the loading command on the screen.

                                          I am away for a few days, but I will test all of this. I'll fall back to the script you posted and see if that works. If it does, I suggest holding back posting any newer versions of the script until the issues are sorted. To simple minds like mine, it looks like the script is the problem when in fact, it's the MAME/MESS core that is screwing up.

                                          Best!

                                          JR

                                          F 2 Replies Last reply Reply Quote 0
                                          • F
                                            Folly @jamrom2
                                            last edited by Folly

                                            @jamrom2 said in Development of module-script generator for lr-mess, lr-mame and mame standalone:

                                            I'll fall back to the script you posted and see if that works.

                                            It's no script but a binary of lr-mess.
                                            You don't have to downgrade the script necessarily, just use the older lr-mess binary.
                                            Extract it and place the core in /opt/retropie/libretrocores/lr-mess as root user.

                                            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.