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.
    • F
      Folly @DTEAM
      last edited by Folly

      @dteam

      Hi,

      I made a script for it.
      I have to improve some things as it is not perfect yet,
      but it should works for most games.

      I am going to make a repository for it, asap.
      I will let you know when it's online.

      Paste your .zip game files into the same directory as the script.
      Use the terminal.
      Go to that script directory.
      Be sure the script is executable with chmod u+x 123-pofo-roms.sh
      Run it with sudo ./123-pofo-roms.sh
      Now it will create .rom files from all .zip files.
      Copy these .rom to the roms/pofo directory.

      Edit :
      This is the repository :
      https://github.com/FollyMaddy/create_atari-portfolio_roms

      Fixed the issue of adding a .com or .exe to the autoexec.bat:

      • If 1 executable is found, then this file will be added to the autoexec.bat .
      • if more executable's are found, then you will be asked to type an executable which is added to the autoexec.bat .
      DTEAMD 1 Reply Last reply Reply Quote 1
      • DTEAMD
        DTEAM @Folly
        last edited by DTEAM

        @folly
        Your script works !!!! great job. Now I have a loading issue :

        hd61830.bin NOT FOUND (tried in hd61830 pofo)
        Fatal error: Required files are missing, the machine cannot be run.
        sdl_kill: closing audio
        Enter sdlwindow_exit
        Leave sdlwindow_exit
        

        My Bios is pofo.7z from MAME 0.233

        NEW EDIT: It loads and it works . I added this Bios hd61830.7z
        thumbnail_IMG_3960.jpg

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

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

          @folly
          Your script works !!!! great job.

          Perfect ;-)

          NEW EDIT: It loads and it works . I added this Bios hd61830.7z

          My setup works also, as you have noticed.
          But I saw in the mame log (/dev/shm/runcommand.log) that the "hd61830.bin ROM NEEDS REDUMP".
          Can you tell me, do you have the same in your log or do you now have a good dump of hd61830.bin ?

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

            @folly
            It looks fine on my side

            Starting Software List ':cart_list'
            Starting RAM ':ram'
            Starting NVRAM ':nvram'
            Starting Portfolio ':'
              (missing dependencies; rescheduling)
            Starting Video Screen ':screen'
            Starting Hitachi HD61830B LCD Controller ':hd61830'
            Starting Speaker ':mono'
            Starting Portfolio ':'
            un7z: opened archive file /home/pi/RetroPie/roms/mame/cheat/cheat.7z
            un7z: closing archive file /home/pi/RetroPie/roms/mame/cheat/cheat.7z and sending to cache
            Loading cheats file from /home/pi/RetroPie/roms/mame/cheat/cheat/pofo.xml
            Attempting to parse: default.cfg
            Attempting to parse: pofo.cfg
            Starting Portfolio
            hiscore: config found
            

            I got it from MAME 0.233

            F 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 and mame standalone:

              @folly
              It looks fine on my side

              I think you may have overlooked it in the log.

              What is the sha1sum of your hd61830.bin ?

              This is my output of mame0233 saying also that hd61830.bin is still a bad dump with sha1sum included (mine is the same):

              pi@raspberrypi:~/RetroPie/BIOS/mame $ p7zip -k -d hd61830.7z
              .
              Extracting archive: hd61830.7z
              .
              pi@raspberrypi:~/RetroPie/BIOS/mame $ /opt/retropie/emulators/mame/mame -listroms pofo
              ROMs required for driver "pofo".
              Name                                   Size Checksum
              c101782-007.u4                       131072 CRC(c9852766) SHA1(c74430281bc717bd36fd9b5baec1cc0f4489fe82)
              c101781-007.u3                       131072 CRC(b8fb730d) SHA1(1b9d82b824cab830256d34912a643a7d048cd401)
              c101783-001a-01.u3                    32768 CRC(61fdaff1) SHA1(5eb99e7a19af7b8d77ea8a2f1f554e6e3d382fa2)
              hd61830.bin                            1472 BAD CRC(06a934da) SHA1(bf3f074db5dc92e6f530cb18d6c013563099a87d) BAD_DUMP
              pi@raspberrypi:~/RetroPie/BIOS/mame $ sha1sum hd61830.bin
              bf3f074db5dc92e6f530cb18d6c013563099a87d  hd61830.bin
              
              

              It seems no way around that, for now.

              Btw :
              I added "Atari Portfolio" to our database selection for the front-end script.
              And I added it in the animated gif for the theme cygnus-blue-flames.

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

                @folly
                I don't see a baddump message in my .log, but I have the same file. So I suppose I also have a Baddump. Try to open the chess game to compare your log with me.

                My hd61830.bin SHA1 : bf3f074db5dc92e6f530cb18d6c013563099a87d

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

                  @dteam

                  It is what it is, we should not spend too much time on it.

                  I checked with guichess.rom, I think the same version.

                  Part of my log looks like this (third line) :

                  un7z: opened archive file /home/pi/RetroPie/BIOS/mame/hd61830.7z
                  un7z: closing archive file /home/pi/RetroPie/BIOS/mame/hd61830.7z and sending to cache
                  hd61830.bin ROM NEEDS REDUMP
                  WARNING: the machine might not run correctly.
                  Optional memory region ':screen' not found
                  Optional memory region ':nvram' not found
                  Starting Portfolio ':'
                    (missing dependencies; rescheduling)
                  Starting Intel 8088 ':u1'
                  Starting Video Screen ':screen'
                    (missing dependencies; rescheduling)
                  Starting palette ':palette'
                  Starting gfxdecode ':gfxdecode'
                  Starting Hitachi HD61830B LCD Controller ':hd61830'
                    (missing dependencies; rescheduling)
                  Starting Atari Portfolio keyboard ':keyboard'
                  Starting Speaker ':mono'
                    (missing dependencies; rescheduling)
                  Starting PCD3311 ':pcd3311t'
                  Starting Atari Portfolio memory card port ':ccma'
                  Starting Atari Portfolio ROM card ':ccma:rom'
                  Starting Atari Portfolio expansion port ':exp'
                  Starting Timer ':counter'
                  Starting Timer ':tick'
                  Starting Software List ':cart_list'
                  Starting RAM ':ram'
                  Starting NVRAM ':nvram'
                  Starting Portfolio ':'
                    (missing dependencies; rescheduling)
                  Starting Video Screen ':screen'
                  Starting Hitachi HD61830B LCD Controller ':hd61830'
                  etc.......
                  
                  1 Reply Last reply Reply Quote 0
                  • F
                    Folly @DTEAM
                    last edited by

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

                    I saw you have used pofo, I also see this "portfolio_rom_card" . What is the connection between these two?

                    I was again busy in understanding how the slot devices are structured.
                    It's a real pain in the ass.
                    Like, for instance nes datach, it can't be listed with the normal -listslots option.
                    I can only detect it with the -listfull option.

                    So I did the same with pofo here I found the option you mentioned and more :

                    portfolio_ccm_slot "Atari Portfolio memory card port"
                    portfolio_expansion_slot "Atari Portfolio expansion port"
                    pofo_hpc101       "Atari Portfolio HPC-101"
                    pofo_hpc102       "Atari Portfolio HPC-102"
                    pofo_hpc104       "Atari Portfolio HPC-104"
                    pofo_hpc104_2     "Atari Portfolio HPC-104 (Unit 2)"
                    portfolio_ram_card "Atari Portfolio RAM card"
                    portfolio_rom_card "Atari Portfolio ROM card"
                    

                    Just like with nes it's not real obvious how to load these.

                    Replied just for the record, as I hope to get an idea on how we can implement these slots into the script.

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

                      @dteam

                      Trying to find the structure here on how we can use the extended options the correct way so it can be added in the script.
                      And above all how do we find these options.

                      In doing so, I searched with :
                      /opt/retropie/emulators/mame/mame -listsoftware nes | grep slot

                      Just like datach(a nes_slot but not listed with mame -listslots nes) I found here also disksys(a nes_slot but not listed with mame -listslots nes) and ofcourse this is also available for famicom (a nes_slot but not listed with mame -listslots famicom) .

                      In the MAME_0.202_Software_List_ROMs_merged there is also famicom_flop(software_list) just something like nes_datach(software_list) .

                      So I tried running this manual and it worked with :

                      /opt/retropie/emulators/mame/mame famicom disksys -flop "/home/pi/RetroPie/roms/famicom/famicom_flop/aliens - alien 2 (japan) (proto) [b].fds"
                      

                      It looks like this :
                      2021-07-25-181826_1600x900_scrot-resized.png 2021-07-25-181531_1600x900_scrot-resized.png 2021-07-25-181551_1600x900_scrot-resized.png 2021-07-25-181602_1600x900_scrot-resized.png

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

                        @dteam

                        Just like using running famicom disks I saw also an option of loading famicom cassettes.
                        I was not sure how to do this, but after a long search I discovered that you need to run Family Basic together with fc_keyboard.
                        It seems that the cassette recorder interface is part of the famicom keyboard.

                        I could not find the correct basic bios as stated with this command :
                        /opt/retropie/emulators/mame/mame -listsoftware famicom

                        If you have the famibs30 bios rom the the load line will be :

                        /opt/retropie/emulators/mame/mame famicom famibs30 -exp fc_keyboard -cass /home/pi/RetroPie/roms/famicom/famicom_cass/hero.wav
                        

                        Instead I found some .nes basic roms and used one of these .

                        This is the manual command on how to load the basic and load the cass file :

                        /opt/retropie/emulators/mame/mame famicom -cart "Family BASIC (V3.0) (J).nes" -exp fc_keyboard -cass /home/pi/RetroPie/roms/famicom/famicom_cass/hero.wav
                        

                        Quite interesting that this works.
                        Just type load, go into the menu, press play on tape,after the load type run.
                        2021-07-25-225659_1600x900_scrot-resized.png 2021-07-25-226647_1600x900_scrot-resized.png

                        You can read more about it here :
                        https://www.nesworld.com/fc-familybasic.php

                        Edit :
                        #seems the famibs30.zip cannot be found in a mame archive
                        #famibs30 can be created from an extracted "Family BASIC (V3.0) (J).nes"
                        #use https://github.com/X-death25/Nes-Extract to extract to a .prg and a .chr
                        #check the names and sha1sums with output of "/opt/retropie/emulators/mame/mame -listsoftware famicom"
                        #rename and repack the .prg .chr to a zip or 7z

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

                          @folly
                          For Atari Portfolio, i’ll do an artwork with 3 views (complet system, no artwork and zoom) after my vacation.

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

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

                            @folly
                            For Atari Portfolio, i’ll do an artwork with 3 views (complet system, no artwork and zoom) after my vacation.

                            Nice, looking forward to it.

                            Have a nice vacation !

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

                              MAME 0.234 is out !

                              I added the mame announcements in post one, so we can have a look on the latest improvements of mame.

                              This is a link to the mame forum with global information about new versions :
                              link_to_whats_new_in_mame

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

                                @folly
                                Nice animated Demo in your first post !!

                                Are you comfortable to add a "pull request" for your script on GitHub for the official RetroPie? I think your script is enough completed. Are you agree?

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

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

                                  @folly
                                  Nice animated Demo in your first post !!

                                  It does speak much more, that animation, doesn't it. ;-)

                                  Are you comfortable to add a "pull request" for your script on GitHub for the official RetroPie? I think your script is enough completed. Are you agree?

                                  I think it't also quite complete and it's something that should be done in the long run.
                                  But I don't want to get tangled in a pull request in a way that I have to make many changes again to the script before it's accepted.
                                  So in that way I am not that comfortable doing the PR yet.

                                  There was also a thread about @valerino wanting to do it for his fork but it wasn't accepted for several reasons.

                                  Perhaps he can give us some clues why.

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

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

                                    There was also a thread about @valerino wanting to do it for his fork but it wasn't accepted for several reasons.
                                    Perhaps he can give us some clues why.

                                    Your script is different and covers all systems and you have a menu interface. This is totally a different story.

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

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

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

                                      There was also a thread about @valerino wanting to do it for his fork but it wasn't accepted for several reasons.
                                      Perhaps he can give us some clues why.

                                      Your script is different and covers all systems and you have a menu interface. This is totally a different story.

                                      Indeed, you have a point ;-)

                                      I will think about it.

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

                                        @BuZz

                                        Hi Jools,

                                        This project is quite matured now and we would like it to take it to the next step of adding it into the original RetroPie-Setup.

                                        I would like you to ask if you can have a look at it, in time.
                                        (take your time, no rush here)

                                        If you feel comfortable with it then I would like to do a pull request for the front-end script only.

                                        Let me know what you think.

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

                                          @folly thanks for your contribution. Is it still a system that generates module files ?

                                          Can you give me an overview as last time I checked it wasn't implemented in a way I could envisage incorporating (generating module files etc)

                                          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

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

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

                                            @folly thanks for your contribution. Is it still a system that generates module files ?

                                            Can you give me an overview as last time I checked it wasn't implemented in a way I could envisage incorporating (generating module files etc)

                                            Thanks for your reply.

                                            It's now evolved as a front-end tool.
                                            Basically you can select all systems that mame/lr-mess supports.
                                            We have added also some manual systems regarding handhelds and systems with extra hardware.

                                            The front-end tool contains a generating part.
                                            So the data of the selected mame system is used to create a module-scripts on the fly.
                                            Per media-type (cas,flop,rom, etc) are generated and a normal one without the media that can be used for .cmd files or the softlist roms.
                                            The front-end will automatically refresh after generating and install the module-scripts on the fly.
                                            If you want to remove them you can do that the normal way.

                                            The major advantage is that you can install for more that 30000 systems.
                                            I think, this would be impossible if you didn't have a generating part.

                                            Another advantage is that the "runcommand-lines" just accept normal file-names just like any other emulator would as there is no need anymore to use softlist-names if you don't want to.

                                            We have also added downloads for :

                                            • theme artwork
                                            • mame arwork
                                            • overlay creation for handhels in lr-mess
                                            • gamelists

                                            This is basically the overview on what the tool does.

                                            Just like @DTEAM says in the next post, everything can be found in the first post :
                                            https://retropie.org.uk/forum/topic/29682/development-of-module-script-generator-for-lr-mess-and-mame-standalone/1
                                            Summarized, it's an amazing piece of work !

                                            How would you envisage incorporating ?

                                            DTEAMD 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.