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

    Io - New Theme

    Scheduled Pinned Locked Moved Projects and Themes
    themeretropie theme
    50 Posts 11 Posters 22.4k 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.
    • PokeEngineerP
      PokeEngineer @mattrixk
      last edited by

      @mattrixk

      Sorry I could not do this earlier, I was busy... I got your theme in the repo!

      I don't have any control of that, but if @herb_fargus or possibly @RetroPieNerd deem it worthy, then I would be a very happy chappy.

      I am just a friendly nerd trying to help out in the RetroPie community!

      Don't sweat it.
      When in doubt, take a BYTE out of life.

      😎

      mattrixkM 1 Reply Last reply Reply Quote 1
      • cyperghostC
        cyperghost
        last edited by cyperghost

        The right theme for my 4,3" CarPoPiCam
        The low contrast of the CRT Display sux with the standard Carbon theme.
        This is a good choice :)

        1 Reply Last reply Reply Quote 0
        • mattrixkM
          mattrixk @PokeEngineer
          last edited by

          @RetroPieNerd: Cheers mate. That's what I like about this community; we all have different skills and all pitch in where we can.

          @cyperghost: I'm happy it suits your needs. I'm currently working to give the Detailed View a different layout for different size screens. It should be done in the next week or so, depending on my workload.

          My ES themes: MetaPixel | Spare | Io | Indent

          meleuM 1 Reply Last reply Reply Quote 1
          • meleuM
            meleu @mattrixk
            last edited by meleu

            @mattrixk
            I installed IO theme today and when I changed from Carbon to IO the emulationstation crashed. I got the bash prompt but it doesn't accpet any input from the keyboard. I log into the pi via SSH, kill the bash process that is running in tty1 terminal, and then emulationstation starts again with the Carbon theme. I switch to your other themes (metapixel, spare) and everything runs fine. The problem happens only with IO.

            Some info for debugging:

            Pi Model: 2 B
            RetroPie Version Used: 4.0.2
            EmulationStation Version Used: I've just update from binary using RetroPie-Setup
            Built From: Pre made 3.8 SD Image on RetroPie website
            USB Devices connected: wireless keyboard, wifi dongle, bluetooth dongle
            Controller used: 8Bitdo SNES30 joystick
            Error messages received:

            emulationstation: /home/pi/RetroPie-Setup/tmp/build/emulationstation/es-core/src/resources/Font.cpp:198: Font::Font(int, const string&): Assertion `mSize > 0' failed.
            

            How to replicate the problem: install IO theme from RetroPie-Setup and then in emulationstation change to IO theme

            • Useful topics
            • joystick-selection tool
            • rpie-art tool
            • achievements I made
            mattrixkM 1 Reply Last reply Reply Quote 0
            • mattrixkM
              mattrixk @meleu
              last edited by

              Hmm, thanks for the heads up @meleu. I make my themes using a portable windows version of ES, rather than RetroPie on a RPi, so I never got that error. I'll have a look into it. Judging from the error message, it could be that RetroPie doesn't like the google font I've used, but honestly, I don't really know what any of that means. Maybe someone who knows more about RetroPie like @herb_fargus or more about themes in general like @Rookervik would have a better idea.

              I just realised it could be something to do with font sizing. In the Io theme I wanted to hide a couple pieces of metadata, so instead of using <pos>1 1</pos> or something, I used <fontSize>0</fontSize>. It worked fine for me so I didn't think much of it. I didn't do this in Spare or MetaPixel.

              My ES themes: MetaPixel | Spare | Io | Indent

              cyperghostC meleuM 2 Replies Last reply Reply Quote 2
              • cyperghostC
                cyperghost @mattrixk
                last edited by cyperghost

                @mattrixk
                Yes that is it. It works for me on all systems now.

                • Open io.xml and search for <fontSize>0</fontSize>
                • Replace all occurrences with <pos>1 1</pos>

                afair there are 2 matches of the fontsize string. Thank you!

                mattrixkM 1 Reply Last reply Reply Quote 1
                • mattrixkM
                  mattrixk @cyperghost
                  last edited by mattrixk

                  @cyperghost: Great, thanks for testing that out. I'll hopefully get a fix up for that soon.

                  That's something I'll need to remember for the future.

                  My ES themes: MetaPixel | Spare | Io | Indent

                  1 Reply Last reply Reply Quote 0
                  • mattrixkM
                    mattrixk
                    last edited by

                    I've made an update to the Io theme.

                    1. I fixed the fontSize bug pointed out by @meleu.
                    2. The theme now has 3 different sizes for different size screens:
                    • Large size for desktops and computer monitors (this is the default view).
                    • Medium size sacrifices most metadata for a larger image.
                    • Small size is for handhelds and shows nothing but the image and gamelist. It also has larger font size for better legibility on a smaller screen.

                    'Io' Theme Detailed View - Medium
                    Io Theme Detailed View

                    'Io' Theme Basic View - Small
                    Io Theme Basic View

                    'Io' Theme Detailed View - Small
                    Io Theme Detailed View

                    I don't have any way to test this on a handheld or 4/3 screen, so if anyone comes across any problems, let me know and I'll see about fixing them.

                    @RetroPieNerd: Do I need to do anything to update this in RetroPie, or does it just pull straight from the GitHub repo, so anyway grabbing it gets the current version?

                    My ES themes: MetaPixel | Spare | Io | Indent

                    PokeEngineerP 2 Replies Last reply Reply Quote 1
                    • B
                      backstander
                      last edited by backstander

                      Great theme @mattrixk !!!

                      mattrixkM 1 Reply Last reply Reply Quote 0
                      • PokeEngineerP
                        PokeEngineer @mattrixk
                        last edited by

                        @mattrixk

                        esthemes.sh pulls straight from the GitHub Repo so all you would have to do is select your theme and press update.

                        Don't sweat it.
                        When in doubt, take a BYTE out of life.

                        😎

                        1 Reply Last reply Reply Quote 0
                        • PokeEngineerP
                          PokeEngineer @mattrixk
                          last edited by

                          @mattrixk

                          So it will download the latest version and overwrite the old in RetroPie.

                          Don't sweat it.
                          When in doubt, take a BYTE out of life.

                          😎

                          1 Reply Last reply Reply Quote 0
                          • mattrixkM
                            mattrixk @backstander
                            last edited by

                            Thanks @backstander :D

                            @RetroPieNerd: Cheers for the info. It's good that I don't really have to do anything on my end except update the theme repo and anyone pulling it gets the most recent version. It could get messy if I had to somehow push it to the RetroPie repo or something. I'm not fully down with GitHub yet.

                            My ES themes: MetaPixel | Spare | Io | Indent

                            1 Reply Last reply Reply Quote 0
                            • mattrixkM
                              mattrixk
                              last edited by

                              The Medium size option of the Io Theme now supports 4:3 resolution.

                              My ES themes: MetaPixel | Spare | Io | Indent

                              1 Reply Last reply Reply Quote 1
                              • meleuM
                                meleu @mattrixk
                                last edited by

                                @mattrixk I forgot to give a feedback. The io theme is now running fine here. Thanks!

                                • Useful topics
                                • joystick-selection tool
                                • rpie-art tool
                                • achievements I made
                                cyperghostC 1 Reply Last reply Reply Quote 0
                                • cyperghostC
                                  cyperghost @meleu
                                  last edited by

                                  @meleu
                                  Do you think it could be possible to change large/medium/small size of themes directly via RetroPie? I think about a database that holds data which theme is able to be changed. You select the option, do a restart of ES et voilà c'est bon.

                                  mattrixkM 1 Reply Last reply Reply Quote 0
                                  • mattrixkM
                                    mattrixk @cyperghost
                                    last edited by

                                    @meleu: Cheers for the testing. I'm working in GridView now.

                                    @cyperghost: I like the idea, but it's way out of my realm of understanding. It's not something that ES themes can do natively.

                                    My ES themes: MetaPixel | Spare | Io | Indent

                                    1 Reply Last reply Reply Quote 1
                                    • meleuM
                                      meleu @mattrixk
                                      last edited by meleu

                                      Hi @mattrixk !

                                      I'm working on a script to automatically generate launching images (discussing about the script on this thread).

                                      I'm not a specialist in emulationstation themes and its XML file structure, but I was able to make my script get the background image from the XML file associated with the theme. More precisely, it gets the <path> field from the system view <image name=background>.

                                      Example from the metapixel theme:

                                      <theme>
                                          ...
                                          <view name="system, basic, detailed">
                                              <image name="background" extra="true">
                                                  ...
                                                  <path>./art/bg_simple.png</path>
                                      

                                      The script successfully gets the bg_simple.png file from the metapixel.xml.

                                      This approach works fine with every theme I tested my script, except the IO theme. Because it seems that its XML file (large.xml) doesn't follow the <image name=background> standard. I see bg_color, bg_help, bg_logo, bg_gamelist, etc... But no background.

                                      So here's my question: Is there a more accurate way to get background from a ES theme XML file?

                                      • Useful topics
                                      • joystick-selection tool
                                      • rpie-art tool
                                      • achievements I made
                                      meleuM 1 Reply Last reply Reply Quote 1
                                      • meleuM
                                        meleu @meleu
                                        last edited by meleu

                                        @meleu said in Io - New Theme:

                                        So here's my question: Is there a more accurate way to get background from a ES theme XML file?

                                        I think I've found the answer a little hidden in one sentence of the EmulationStation themes documentation:

                                        "Extra" elements will be drawn in the order they are defined (so define backgrounds first!).

                                        Would I be right to say that I can get the system view background from the very first "extra" XML element inside the <view name=system>?

                                        Time to make some tests... :-)

                                        • Useful topics
                                        • joystick-selection tool
                                        • rpie-art tool
                                        • achievements I made
                                        mattrixkM 1 Reply Last reply Reply Quote 0
                                        • mattrixkM
                                          mattrixk @meleu
                                          last edited by

                                          @meleu:

                                          I'm a web developer by trade, so I generally end up having set ways that I label things. In this example, if something is a background, then it's labelled with "bg_". So here, the overall background colour is labelled "bg_color", the background of the Help bar is labelled "bg_help", etc.

                                          The Io theme doesn't really have a background image as such. Each background box is a single element using a 16x16px white PNG, stretched the right size and then has a colour applied to it with the <color> tag. If I labelled "bg_color" as just "background", you would most likely just be pulling in a square white PNG.

                                          Would I be right to say that I can get the system view background from the very first "extra" XML element inside the <view name=system>?

                                          That sounds like it might be the way to go. One question though, does it get just the background path? Sometimes a theme might have a plain white background image/pattern, and then it has the colour applied with the <color> tag (as it is with Io). Would your script grab the colour as well, or just the image?

                                          My ES themes: MetaPixel | Spare | Io | Indent

                                          meleuM 2 Replies Last reply Reply Quote 1
                                          • meleuM
                                            meleu @mattrixk
                                            last edited by

                                            @mattrixk I've made some tests with the first "extra" element inside the system view really seems to be way to go. I'm not on a RetroPie now, but later I'll post some generated images for IO theme here... ;-)

                                            Would your script grab the colour as well, or just the image?

                                            It takes the color too.

                                            Here is an example of a generated image where the script took the color from the megadrive/theme.xml (material theme):
                                            megadrive_material

                                            The script has an option named --solid-bg-color, when this option is not present, the script applies the color on the background in a "semitransparent way" (I don't know how to describe it, oh my poor english... :/ ). If the user use the --solid-bg-color option the script applies a solid color to the background image (if the background has a picture, it will be fully covered by the color, in other words, the picture will can not be seen).

                                            • Useful topics
                                            • joystick-selection tool
                                            • rpie-art tool
                                            • achievements I made
                                            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.