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 35 Posters 6.0m 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.
    • S
      shift @Folly
      last edited by

      @Folly I read the initial driver info: src/mame/sfrj/pecom.cpp and I think the explanation is right here (TODO):

      Pecom driver by Miodrag Milanovic

      2008-11-08 Preliminary drivers.

      • All commands to be in UPPERCASE.
      • Change background colour: SCR n
      • Enter monitor: PROB (B to exit)
      • If Capslock is engaged, then Shift doesn't work.
      • Control hangs the machine while it is pressed. It doesn't work in the
        expected way.
      • Don't touch the Shift key while loading a tape because it will corrupt
        the date.
      • The screen will flash in a crazy epileptic fashion while loading a tape.
        Beware!

      TODO:

      • Cassette: can load its own recordings, but not those from software list
        (software-list tapes are slower & wobbly)
      • Both machines currently have 32k ram.
      • Autorepeat seems a bit fast
      F 1 Reply Last reply Reply Quote 0
      • F
        Folly @shift
        last edited by

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

        Cassette: can load its own recordings, but not those from software list

        Aha, that makes sense.

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

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

          I'm trying to run Naomi but it won't load . Are you able on your side?

          Yes it boots after adding the required files that it was complaining about.
          Did this on my x64 laptop, check the speed.
          On the pi5 it will run much slower than 80%.

          pi@Host:~$ /opt/retropie/emulators/mame/mame -ui_active naomi
          315-6146.bin NOT FOUND (tried in mie naomi)
          sp5001.bin NOT FOUND (tried in jvs13551 naomi)
          sp5001-a.bin NOT FOUND (tried in jvs13551 naomi)
          sp5001-b.bin NOT FOUND (tried in jvs13551 naomi)
          sp5002-a.bin NOT FOUND (tried in jvs13551 naomi)
          315-6215.bin NOT FOUND (tried in jvs13551 naomi)
          Fatal error: Required files are missing, the machine cannot be run.
          pi@Host:~$ /opt/retropie/emulators/mame/mame -ui_active naomi
          315-6146.bin NOT FOUND (tried in mie naomi)
          Fatal error: Required files are missing, the machine cannot be run.
          pi@Host:~$ /opt/retropie/emulators/mame/mame -ui_active naomi
          Average speed: 79.29% (24 seconds)
          
          1 Reply Last reply Reply Quote 1
          • F
            Folly
            last edited by Folly

            @shift

            You might want to try the emma02 emulator which can emulate pecom32/pecom64.
            It seems it has it's own tape format files (.pecom) which should load.
            Perhaps it's possible to convert the tapes to .wav for mame within that emulator.

            Another approach could be to get the remastered files (Ei PECOM Remastered by kiFla) and try editing with audacity (reduce volume etc.)
            As stated it should be possible to save files in mame so you can check the wav file on how it should look like in terms of volume etc.

            Edit 1:

            Cassette: can load its own recordings

            Tried this simple program :
            10 PRINT"HALLO"

            PSAVE works however PLOAD doesn't work in 267.
            Tried the psaved file from 267 in 240 and that loaded the file.

            So there seems to be some regression going on.

            S 2 Replies Last reply Reply Quote 0
            • S
              shift @Folly
              last edited by

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

              You might want to try the emma02 emulator which can emulate pecom32/pecom64.
              It seems it has it's own tape format files (.pecom) which should load.
              Perhaps it's possible to convert the tapes to .wav for mame within that emulator.

              Another approach could be to get the remastered files (Ei PECOM Remastered by kiFla) and try editing with audacity (reduce volume etc.)
              As stated it should be possible to save files in mame so you can check the wav file on how it should look like in terms of volume etc.

              I tried that emulator and it works perfectly with all file types: .wav, .hex, .pecom, but unfortunately it doesn't save from .hex/.pecom to .wav, but if I load a .wav file I can save it in .hex format which is also present in TOSEC and therefore could also be supported by mame in the future.
              I also tried to amplify the .wav file with audacity, but to no avail, it doesn't even notice that the tape is loading, it stays there, waiting for I don't know what. The same procedure with Emma02 instead produces a continuous blue/white flash, until the prompt (:READY) arrives and the consequent RUN to launch it.

              You were talking about some Ei PECOM Remastered by kiFla files but I couldn't find them, is there a link for that?

              1 Reply Last reply Reply Quote 0
              • S
                shift @Folly
                last edited by shift

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

                Tried this simple program :
                10 PRINT"HALLO"

                PSAVE works however PLOAD doesn't work in 267.
                Tried the psaved file from 267 in 240 and that loaded the file.

                So there seems to be some regression going on.

                Very interesting, I try to see the differences in the history of the pecom.cpp driver

                EDIT: I opened an issue on https://github.com/mamedev/mame/issues
                Let's see what they say

                S 1 Reply Last reply Reply Quote 0
                • S
                  shift @shift
                  last edited by

                  @folly changing the subject, I tried to install the psionlz system from the script, but nothing seems to happen, am I doing something wrong?

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

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

                    @folly changing the subject, I tried to install the psionlz system from the script, but nothing seems to happen, am I doing something wrong?

                    You need these two BIOS files :
                    psionlz.zip
                    hd44780_a00.zip

                    I found that hd44780_a00.zip doesn't exist in mame-merged so I renamed hd44780.zip, which also contains that file, to hd44780_a00.zip.
                    Then it will work however mame will complain about a wrong checksum.
                    Seems mame-merged isn't up to date for that driver.

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      shift @Folly
                      last edited by

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

                      You need these two BIOS files :
                      psionlz.zip
                      hd44780_a00.zip

                      I found that hd44780_a00.zip doesn't exist in mame-merged so I renamed hd44780.zip, which also contains that file, to hd44780_a00.zip.
                      Then it will work however mame will complain about a wrong checksum.
                      Seems mame-merged isn't up to date for that driver.

                      Sorry, I explained myself badly, the problem is that the script does not create anything, neither the empty folder in /roms, nor the folder with the configuration files in the /opt/retropie/configs folder, nor the string in es_systems.cfg. If it works fine for you then it's my problem.

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

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

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

                        You need these two BIOS files :
                        psionlz.zip
                        hd44780_a00.zip

                        I found that hd44780_a00.zip doesn't exist in mame-merged so I renamed hd44780.zip, which also contains that file, to hd44780_a00.zip.
                        Then it will work however mame will complain about a wrong checksum.
                        Seems mame-merged isn't up to date for that driver.

                        Sorry, I explained myself badly, the problem is that the script does not create anything, neither the empty folder in /roms, nor the folder with the configuration files in the /opt/retropie/configs folder, nor the string in es_systems.cfg. If it works fine for you then it's my problem.

                        Updated the scrips so psionlz can be installed :
                        https://github.com/FollyMaddy/RetroPie-Share/commit/18892b38b8e2464243a700444870f4fb1d402deb

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          shift @Folly
                          last edited by

                          @Folly it works perfectly

                          Another question:
                          I was testing the SF-7000 system, an add-on for Sega's SC-3000. I saw that in the media list:

                          SYSTEM           MEDIA NAME       (brief)    IMAGE FILE EXTENSIONS SUPPORTED
                          ---------------- --------------------------- -------------------------------
                          sf7000           cassette         (cass)     .wav  .flac .bit  .tzx
                          sf7000           floppydisk       (flop)     .mfi  .dfi  .hfe  .mfm  .td0  .imd  .d77  .d88  .1dd  .cqm  .cqi  .dsk  .sf7
                          sf7000           printout         (prin)     .prn
                          
                          

                          there is only one floppy available

                          Since you need the floppy with the basic to load almost 90% of the games, would it be possible to add a second floppy to the script?

                          Ah! One more thing, in the SF3000 I'm using this line:

                          But I don't remember having told you that to make the games on cassette work you first had to load the basic from the cartridge, this is the line I'm using:

                          lr-mess-sc3000-basic-cass = "/opt/retropie/emulators/retroarch/bin/retroarch --config /opt/retropie/configs/sc3000/retroarch.cfg --appendconfig /opt/retropie/configs/sc3000/retroarch.cfg.add -S /home/pi/RetroPie/roms/sc3000 -s /home/pi/RetroPie/roms/sc3000 -v -L /opt/retropie/libretrocores/lr-mess/mamemess_libretro.so 'sc3000  -rompath /home/pi/RetroPie/BIOS/mame;/home/pi/RetroPie/roms/sc3000/ -cfg_directory /opt/retropie/configs/sc3000/lr-mess -c -ui_active -cart basic3 -cass %ROM%'"
                          
                          
                          F S 2 Replies Last reply Reply Quote 0
                          • F
                            Folly @shift
                            last edited by

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

                            @Folly it works perfectly

                            Another question:
                            I was testing the SF-7000 system, an add-on for Sega's SC-3000. I saw that in the media list:

                            SYSTEM           MEDIA NAME       (brief)    IMAGE FILE EXTENSIONS SUPPORTED
                            ---------------- --------------------------- -------------------------------
                            sf7000           cassette         (cass)     .wav  .flac .bit  .tzx
                            sf7000           floppydisk       (flop)     .mfi  .dfi  .hfe  .mfm  .td0  .imd  .d77  .d88  .1dd  .cqm  .cqi  .dsk  .sf7
                            sf7000           printout         (prin)     .prn
                            
                            

                            there is only one floppy available

                            Since you need the floppy with the basic to load almost 90% of the games, would it be possible to add a second floppy to the script?

                            This isn't possible, mame doesn't support a second floppy for this driver.

                            Ah! One more thing, in the SF3000 I'm using this line:

                            But I don't remember having told you that to make the games on cassette work you first had to load the basic from the cartridge, this is the line I'm using:

                            lr-mess-sc3000-basic-cass = "/opt/retropie/emulators/retroarch/bin/retroarch --config /opt/retropie/configs/sc3000/retroarch.cfg --appendconfig /opt/retropie/configs/sc3000/retroarch.cfg.add -S /home/pi/RetroPie/roms/sc3000 -s /home/pi/RetroPie/roms/sc3000 -v -L /opt/retropie/libretrocores/lr-mess/mamemess_libretro.so 'sc3000  -rompath /home/pi/RetroPie/BIOS/mame;/home/pi/RetroPie/roms/sc3000/ -cfg_directory /opt/retropie/configs/sc3000/lr-mess -c -ui_active -cart basic3 -cass %ROM%'"
                            
                            

                            It's possible to add an extra install for sc3000 in the EXTRAS section.
                            I think for the orion128 that is also the best solution as my experiment in the default section was not a good solution.
                            Will have a look at these in the coming week.

                            S 1 Reply Last reply Reply Quote 0
                            • S
                              shift @shift
                              last edited by

                              @Folly something very strange happened to me with the psionlz emulator.

                              The first time I launched a game with lr-mess (basename) everything went well, it booted where I chose the language and I arrived in the GUI, everything was fine in short. I go out.
                              I do the same procedure again and it gives me this message TRAP 5557 5555 and the screen goes blank, I can't do anything anymore.

                              I try again by changing launch mode, I use lr-run-mess, same thing, the first time it works, but from the second onwards the same message on the display TRAP 5557 5555.

                              I also try again with the mame, same thing, the first time it works, but from the second onwards the same message TRAP 5557 5555.

                              Tried with lr-mess (dpak1), different error message TRAP 012C CDE6

                              I tried uninstalling and reinstalling the psionlz system, but nothing, it immediately gives me those errors, what could it be? Any configuration that remains active?

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

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

                                It's possible to add an extra install for sc3000 in the EXTRAS section.

                                OK perfect!

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

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

                                  @Folly something very strange happened to me with the psionlz emulator.

                                  The first time I launched a game with lr-mess (basename) everything went well, it booted where I chose the language and I arrived in the GUI, everything was fine in short. I go out.
                                  I do the same procedure again and it gives me this message TRAP 5557 5555 and the screen goes blank, I can't do anything anymore.

                                  I try again by changing launch mode, I use lr-run-mess, same thing, the first time it works, but from the second onwards the same message on the display TRAP 5557 5555.

                                  I also try again with the mame, same thing, the first time it works, but from the second onwards the same message TRAP 5557 5555.

                                  Tried with lr-mess (dpak1), different error message TRAP 012C CDE6

                                  I tried uninstalling and reinstalling the psionlz system, but nothing, it immediately gives me those errors, what could it be? Any configuration that remains active?

                                  Seems there are issues with the driver.
                                  Found that all psion2 software is marked as not supported in the hash table.
                                  However I could load assem.zip.
                                  Though indeed as you said there will be a TRAP message the second time you try.
                                  You can circumvent this by deleting the nvram files.
                                  For lr-mess they are saved in the same folder as the software is, like :
                                  /home/pi/RetroPie/roms/psionlz/mame/nvram/psionlz
                                  For mame standalone it will be in :
                                  /home/pi/RetroPie/roms/mame/nvram/psionlz
                                  Sadly no other options right now.

                                  S 1 Reply Last reply Reply Quote 0
                                  • S
                                    shift @Folly
                                    last edited by

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

                                    Seems there are issues with the driver.
                                    Found that all psion2 software is marked as not supported in the hash table.
                                    However I could load assem.zip.
                                    Though indeed as you said there will be a TRAP message the second time you try.
                                    You can circumvent this by deleting the nvram files.
                                    For lr-mess they are saved in the same folder as the software is, like :
                                    /home/pi/RetroPie/roms/psionlz/mame/nvram/psionlz
                                    For mame standalone it will be in :
                                    /home/pi/RetroPie/roms/mame/nvram/psionlz
                                    Sadly no other options right now.

                                    As for the standalone MAME, actually the nvram was where you said, in fact deleting it worked, however I noticed that the path to the nvram for lr-mess was created here: /home/pi/psionlz -rompath /home/pi/ RetroPie/BIOS/mame/psionlz
                                    not only psionlz but with that strange path I also found spc1000, svi328 and phc25
                                    It seems a bit strange to me, are you saying it's the driver?

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

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

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

                                      Seems there are issues with the driver.
                                      Found that all psion2 software is marked as not supported in the hash table.
                                      However I could load assem.zip.
                                      Though indeed as you said there will be a TRAP message the second time you try.
                                      You can circumvent this by deleting the nvram files.
                                      For lr-mess they are saved in the same folder as the software is, like :
                                      /home/pi/RetroPie/roms/psionlz/mame/nvram/psionlz
                                      For mame standalone it will be in :
                                      /home/pi/RetroPie/roms/mame/nvram/psionlz
                                      Sadly no other options right now.

                                      As for the standalone MAME, actually the nvram was where you said, in fact deleting it worked, however I noticed that the path to the nvram for lr-mess was created here: /home/pi/psionlz -rompath /home/pi/ RetroPie/BIOS/mame/psionlz

                                      Is the path :
                                      /home/pi/psionlz -rompath /home/pi/ RetroPie/BIOS/mame/psionlz ?

                                      not only psionlz but with that strange path I also found spc1000, svi328 and phc25

                                      Had a look in the help of RetroArch, might be that these options don't work for newer versions anymore :

                                      -s, --save=PATH                Path for save files (*.srm). (DEPRECATED, use --appendconfig and savefile_directory)
                                      -S, --savestate=PATH           Path for the save state files (*.state). (DEPRECATED, use --appendconfig and savestate_directory)
                                      

                                      Then we have to bisect the runcommand.
                                      Although not really not sure, will have to think about that.
                                      Could also be a corrupted retroarch.cfg somewhere.

                                      It seems a bit strange to me, are you saying it's the driver?

                                      Believe me, mame is a nice package but has a lot of issues and if far from perfect.
                                      What do you think it would be ?

                                      S 1 Reply Last reply Reply Quote 0
                                      • S
                                        shift @Folly
                                        last edited by

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

                                        Is the path :
                                        /home/pi/psionlz -rompath /home/pi/ RetroPie/BIOS/mame/psionlz ?

                                        yes, exactly that.

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

                                        Had a look in the help of RetroArch, might be that these options don't work for newer versions anymore :

                                        -s, --save=PATH Path for save files (.srm). (DEPRECATED, use --appendconfig and savefile_directory)
                                        -S, --savestate=PATH Path for the save state files (
                                        .state). (DEPRECATED, use --appendconfig and savestate_directory)

                                        If the use of -s and -S are deprecated it could be that some drivers behave strangely, also because, it doesn't do it with everyone, of all the systems I installed only 4 or 5 had this strange problem.

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          shift @shift
                                          last edited by

                                          @Folly I'm trying the Sord M5 system, however some cassettes require that the basic I from the cartridge be loaded first, I modified a line generated by the script to be able to make those cassettes work, the command line is this:

                                          lr-mess-m5-basic-cass = "/opt/retropie/emulators/retroarch/bin/retroarch --config /opt/retropie/configs/m5/retroarch.cfg --appendconfig /opt/retropie/configs/m5/retroarch.cfg.add -S /home/pi/RetroPie/roms/m5 -s /home/pi/RetroPie/roms/m5 -v -L /opt/retropie/libretrocores/lr-mess/mamemess_libretro.so 'm5  -rompath /home/pi/RetroPie/BIOS/mame;/home/pi/RetroPie/roms/m5/ -cfg_directory /opt/retropie/configs/m5/lr-mess -c -ui_active -cart1 basici -cass %ROM%'"
                                          
                                          
                                          F 1 Reply Last reply Reply Quote 0
                                          • F
                                            Folly @shift
                                            last edited by Folly

                                            @shift

                                            I could use some help with the script.
                                            Seems you might be the one that could help.
                                            Do you have a github account and do you want to help with the script ?

                                            Have a look at these lines in the script :
                                            https://github.com/FollyMaddy/RetroPie-Share/blob/main/00-scriptmodules-00/supplementary/mamedev.sh#L739-L816

                                            These are CSV lines to do the EXTRAS installs.
                                            You can add a custom line for the driver you want.
                                            For example for :

                                            • orion128
                                            • sc3000
                                            • m5

                                            If it works then you can do a PullRequest to add the lines to the script.

                                            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.