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

Modifying original source

Scheduled Pinned Locked Moved Ideas and Development
emulationstatiodevelopmentsource code
22 Posts 7 Posters 4.2k 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.
  • M
    masteryoer
    last edited by 21 Mar 2017, 01:12

    Hey guys,

    Before I jumped head long into doing it, I wanted to see what the retropie community though, even though it's more-so related to emulationstation.

    I am building a custom console called xcade. I am building it for personal use, but wanted to do as much custom work as I could to it. I was looking at the source code for emulationstation today, and noticed that the emulation station theme itself (the menus, windows, etc) is all hard-coded into the source.

    Would the community, and contributor, have a problem with me modifying the source to use my own graphical elements, and recompiling for use personally? Of course, I would clone the repository and share my work with everybody, but wanted to know if it were possible, or against the terms of use or anything.

    Basically just want to change the white/greyish backgrounds to match my theme I am building, and also to change the UI elements to match better, too for a more seamless look.

    H 1 Reply Last reply 21 Mar 2017, 01:59 Reply Quote 0
    • H
      herb_fargus administrators @masteryoer
      last edited by 21 Mar 2017, 01:59

      @masteryoer here is the licence for emulationstation:

      https://github.com/RetroPie/EmulationStation/blob/master/LICENSE.md

      I don't see any issue with what you describe, looking forward to seeing your build!

      If you read the documentation it will answer 99% of your questions: https://retropie.org.uk/docs/

      Also if you want a solution to your problems read this first: https://retropie.org.uk/forum/topic/3/read-this-first

      M 1 Reply Last reply 21 Mar 2017, 02:16 Reply Quote 0
      • M
        masteryoer @herb_fargus
        last edited by 21 Mar 2017, 02:16

        @herb_fargus

        Nice! Now I just need to find out how to tell retropie-setup.sh to use my git repository, instead of the actual emulationstation one. Then, I can change all my stuff locally, rebuild and test. I should do it on my windows machine first though to get the process down as it takes a long time to build ES on my pi1b.

        J 1 Reply Last reply 21 Mar 2017, 02:21 Reply Quote 0
        • J
          jdrassa @masteryoer
          last edited by 21 Mar 2017, 02:21

          @masteryoer you should be able to use this file as a guide. It will add an additional option in the experimental menu.

          https://github.com/RetroPie/RetroPie-Setup/blob/master/scriptmodules/supplementary/emulationstation-kids.sh

          Get latest build of EmulationStation for Windows here

          M 1 Reply Last reply 21 Mar 2017, 02:49 Reply Quote 1
          • M
            masteryoer @jdrassa
            last edited by 21 Mar 2017, 02:49

            @jdrassa I am not sure what the 'expiremental' menu is. Is that the menu that installs the emulationstation ?

            J 1 Reply Last reply 21 Mar 2017, 03:06 Reply Quote 0
            • J
              jdrassa @masteryoer
              last edited by 21 Mar 2017, 03:06

              @masteryoer when you run retropie-setup.sh, the normal process to install/update emulationstation would be to select 'Manage packages' -> 'Manage core packages' -> 'emulationstation'.

              The file I linked to is currently included in retropie-setup.sh and can be used to install a different fork of emulationstation. You should be able to copy the file, rename it, and updated it to point toward your fork on github. To access the option, in retropie-setup.sh, you would select 'Manage packages' -> 'Manage experimental packages' -> 'emulationstation-kids' ( this last option would change to whatever you choose to name it)

              Get latest build of EmulationStation for Windows here

              1 Reply Last reply Reply Quote 0
              • M
                masteryoer
                last edited by 21 Mar 2017, 03:39

                @jdrassa

                Would I be able to add another one to that list, instead of overwriting emulationstation-kids ? I looked at emulationstation-kiosk and kids, and both of them do some things I had planned to do with the UI. (Removing scraping, changing the UI, etc), so I wouldn't think it would be very hard to duplicate it. I could probably start with just forking the kid version and changing that.

                So when you change the UI mode in the config, does it actually recompile the right version and then load it up, or does it install each one in a different location, and change the config to point to whatever location?

                J 1 Reply Last reply 21 Mar 2017, 03:49 Reply Quote 0
                • J
                  jdrassa @masteryoer
                  last edited by 21 Mar 2017, 03:49

                  @masteryoer that script will install a fork of emulation station that has been modified to specifically add the different UI modes (kids / kiosk). I believe, once installed, you can switch between modes using the menus. I haven't actually used it.

                  Get latest build of EmulationStation for Windows here

                  M 1 Reply Last reply 21 Mar 2017, 10:41 Reply Quote 0
                  • M
                    masteryoer @jdrassa
                    last edited by 21 Mar 2017, 10:41

                    @jdrassa

                    Right I'm just trying to figure out if it's actually just modified source it loads up with the elements missing or if it's special code that's ran inside the original source.

                    J D 2 Replies Last reply 21 Mar 2017, 10:45 Reply Quote 0
                    • J
                      jdrassa @masteryoer
                      last edited by 21 Mar 2017, 10:45

                      @masteryoer my understanding is that the source was modified to selectively disable certain things when a UI mode is activated.

                      Get latest build of EmulationStation for Windows here

                      1 Reply Last reply Reply Quote 0
                      • D
                        dankcushions Global Moderator @masteryoer
                        last edited by 21 Mar 2017, 11:38

                        @masteryoer look at this line:
                        https://github.com/RetroPie/RetroPie-Setup/blob/master/scriptmodules/supplementary/emulationstation-kids.sh#L22

                        as you can see, it points to a different repo (a fork of emulationstation).

                        M 1 Reply Last reply 21 Mar 2017, 12:12 Reply Quote 0
                        • Z
                          Zigurana
                          last edited by 21 Mar 2017, 11:57

                          Hey, I made the Kid-modes fork, AMA!

                          If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                          L 1 Reply Last reply 21 Mar 2017, 12:05 Reply Quote 0
                          • L
                            lilbud @Zigurana
                            last edited by 21 Mar 2017, 12:05

                            @Zigurana When will it be updated/included in the offical ES build?

                            Creator of the Radiocade: https://retropie.org.uk/forum/topic/6077/radiocade

                            Backlog: http://backloggery.com/lilbud

                            1 Reply Last reply Reply Quote 0
                            • M
                              masteryoer @dankcushions
                              last edited by 21 Mar 2017, 12:12

                              @dankcushions Right, I saw that. My question was related to how the emulationstation-kids fork actually works. Is it just another full emulationstation source with the selective things removed out of it, or is it an addition/module for the emulationstation source?

                              D 1 Reply Last reply 21 Mar 2017, 12:45 Reply Quote 0
                              • D
                                dankcushions Global Moderator @masteryoer
                                last edited by 21 Mar 2017, 12:45

                                @masteryoer said in Modifying original source:

                                @dankcushions Right, I saw that. My question was related to how the emulationstation-kids fork actually works. Is it just another full emulationstation source with the selective things removed out of it, or is it an addition/module for the emulationstation source?

                                it's a full source. i mean it has to be if it's a fork and is the only source when building.

                                M 1 Reply Last reply 21 Mar 2017, 13:39 Reply Quote 0
                                • M
                                  masteryoer @dankcushions
                                  last edited by 21 Mar 2017, 13:39

                                  @dankcushions

                                  That was what I was after :) Since the 'kid' version is the most lightweight, and more what I am looking for, it's what I will base mine off of. I'll just reverse the changes to only show 'kid friendly' games in the game lists, so that all games show up instead, as well as doing some more custom work, like changing the UI elements to match my theme (black and lime green ftw).

                                  In looking at the source code, I noticed there's an option for a horizontal or 'vertical' carousel on the main systems view. I don't recall ever seeing a config option anywhere for changing this. Is this a WIP option?

                                  H Z 2 Replies Last reply 21 Mar 2017, 13:59 Reply Quote 0
                                  • H
                                    herb_fargus administrators @masteryoer
                                    last edited by 21 Mar 2017, 13:59

                                    @masteryoer that's a pending PR for a vertical carousel. It's still being tested

                                    If you read the documentation it will answer 99% of your questions: https://retropie.org.uk/docs/

                                    Also if you want a solution to your problems read this first: https://retropie.org.uk/forum/topic/3/read-this-first

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      masteryoer
                                      last edited by 21 Mar 2017, 19:05

                                      Hmm, so I guess I don't understand how the modules work after all. I created a new script called emulationstation-xcade.sh and changed the stuff around, and it shows up in the retropie experimental builds list, but once I try building from source I get a unable to build, cannot locate /tmp/build/emulationstation-xcade/emulationstation). I copied the .sh script from emulationstation-kids and changed all the stuff referencing -kids over to xcade, so I am not sure why that one builds but mine doesn't.

                                      B 1 Reply Last reply 21 Mar 2017, 19:07 Reply Quote 0
                                      • B
                                        BuZz administrators @masteryoer
                                        last edited by 21 Mar 2017, 19:07

                                        @masteryoer Can't advise without any information - Post the module and build log.

                                        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

                                        M 1 Reply Last reply 21 Mar 2017, 19:17 Reply Quote 0
                                        • M
                                          masteryoer @BuZz
                                          last edited by 21 Mar 2017, 19:17

                                          @BuZz

                                          Nevermind, I am a dummy. The log was misinformative. It ended up being my source repository didnt have my latest changes, in which I was using an undefined definition.

                                          I updated the repository and it's fixed now.

                                          1 Reply Last reply Reply Quote 0
                                          20 out of 22
                                          • First post
                                            20/22
                                            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.

                                            This community forum collects and processes your personal information.
                                            consent.not_received