Forum Replies Created

Viewing 35 posts - 71 through 105 (of 165 total)
  • Author
    Posts
  • sselph
    Participant

    Did you ever figure this out? I tested it on my rpi2 and cmake worked. Still waiting for the make command to complete. The error makes it sound like your compiler is missing.

    Edit:
    The make worked. I haven’t run the binary since I didn’t want to have it converting my xml’s in to sqlite, etc.

    in reply to: More then 12 Emulators active #91543
    sselph
    Participant

    You could see if there is anything in ~/.emulationstation/es_log.txt

    in reply to: More then 12 Emulators active #91445
    sselph
    Participant

    I remember reading in another forum post, there can be issues with the amount of RAM required and the number of emulators ES is loading. There was a recent change to reduce the size of background images to reduce the amount required so you could try upgrading it to see. But you’d expect the problem to get better with the rpi2 since it has more RAM.

    sudo ~/RetroPie-Setup/retropie_packages.sh emulationstation install_bin
    sudo ~/RetroPie-Setup/retropie_packages.sh esthemesimple
    in reply to: Disc swapping in PSX emulator #90709
    sselph
    Participant

    Is it possible to symlink the same save for each disk?

    $ ln -s rom-disc1.srm rom-disc2.srm
    $ ln -s rom-disc1.srm rom-disc3.srm
    in reply to: Auto Scraper v0.6 #90362
    sselph
    Participant

    There isn’t a way for the script to pull different boxart. The options are pull the image from thegamesdb or use the one available locally. As Floob mentioned, if you are able to get a good set of PAL images you can name them to match the pattern the scraper is using and when it scrapes it will see that the image already exists and skip downloading it.

    in reply to: How to generate customized gamelist XML? #90095
    sselph
    Participant

    Think I found the issue. SMD are supposed to have a 512 byte header but might not always have one. I went ahead and refactored the logic for MD to simplify it and hopefully make it a little more robust. The new version is being deployed now.

    in reply to: Auto Scraper v0.6 #90094
    sselph
    Participant

    Think I found the issue. SMD are supposed to have a 512 byte header so it shouldn’t be divisible by 16384. I went ahead and refactored the logic for MD. I read the file’s content to try and determine the formatting instead of relying on the extension and make the 512 byte header optional.

    Thanks again for testing this.

    in reply to: How to generate customized gamelist XML? #90089
    sselph
    Participant

    I’ve gotten this report from another user with megadrive smd files inside zip files. I’ll investigate it.

    in reply to: Auto Scraper v0.6 #89954
    sselph
    Participant

    I’m assuming these are .SMD since .MGD aren’t accepted by the emulator.

    This could occur if the file’s size wasn’t an increment of 16kB. The SMD file format breaks the file in to blocks of 16k then swaps bits around so that all the even bits are at the beginning of the block and odd bits at the end. So I read the file in chunks of 16k assuming it is possible since all no-intro entries except a couple prototypes have sizes divisible by 16384.

    The other possibility is there is a bug. I’ll read over the code and write some tests. In the meantime, do you mind checking the size of a couple of these to confirm they are indeed divisible by 16384.

    in reply to: How to generate customized gamelist XML? #89837
    sselph
    Participant

    I have written a scraper that could do this. The default behavior is to download metadata and use the No-Intro name and existing image if available, but you could trick it in to just generating a xml with the file name and image.

    I’ll give the instructions for the rpi if you have a rpi2 just replace rpi with rpi2 in the first 2 commands. Also replace snes with whatever system you want to work with:

    wget https://github.com/sselph/scraper/releases/download/v0.6.5-beta/scraper_rpi.zip
    $ sudo unzip scraper_rpi.zip scraper -d /usr/local/bin/
    $ touch /tmp/hash.csv
    $ cd ~/RetroPie/roms/snes
    $ mkdir images

    Copy all your images into this images folder. The script assumes the file names will be .jpg. If you don’t want to have all your images in the rom folder you can pass the desired image path to both the -image_dir and -image_path parameters.
    $ scraper -hash_file /tmp/hash.csv -add_not_found -image_suffix=""

    You will see tons of log entries about not finding any hashes. That is expected. When it is finished you should have a gamelist with just the file, image, and name which is the file name minus the file extension. I haven’t tested this but it should work.

    in reply to: Auto Scraper v0.6 #89723
    sselph
    Participant

    killer101:
    Thanks for testing. I obviously didn’t think this change through all the way. I’ve updated the change so that if something is being written to XML with empty image lines, it will check to see if they exist and add them. This will hopefully cover all the different options.

    vretro:
    My initial thought is that Amiga seems difficult. The hash data I’ve found is for the ipf formatting not the adf formatting and it doesn’t seem possible to convert from one to the other. The HOL site has the best set of data but nothing is keyed off file name. So would end up relying on search similar to the built in scraper which would have similar issues of being unreliable. I’ll continue to look in to it.

    in reply to: Auto Scraper v0.6 #89583
    sselph
    Participant

    Ah sorry, my mame handling is completely separate from the console handling. I just implemented the console part. I’ll go back in this evening to add similar code to mame.

    in reply to: Please, help me RetroPie Community. #89536
    sselph
    Participant

    EmulationStation only shows emulators that have ROMs in their folders with the correct extension. So you just need to copy them over and it should work for SNES and N64. The easiest way for me is to just use the windows file shares that the retropie creates. So just browse the network and drop the roms in one of the snes/n64 folders.

    The expected extensions are in /etc/emulationstation/es_systems.cfg:
    SNES .smc .sfc .fig .swc .zip
    N64 .z64 .n64 .v64 zip

    A few other things:
    it is sudo apt-get install lxde

    it is /etc/network/interfaces

    in reply to: Auto Scraper v0.6 #89527
    sselph
    Participant

    I added checks to see if the file exists locally even if there isn’t a file on the server. Also added a -download_images flag that you can set to false to force it to only look locally. It is in the process of pushing the new release now.

    in reply to: Auto Scraper v0.6 #89520
    sselph
    Participant

    Ah okay. Let me make a few tweaks to fix that.

    in reply to: Auto Scraper v0.6 #89495
    sselph
    Participant

    The scraper will skip the image download if it sees a file named the same as the one it would save so if you have a rom roms/nes/rom.nes and a image named rom.jpg you could place the images in roms/nes/images and add the flags -image_suffix=”” -no_thumb

    the suffix defaults to “-image” (rom-image.jpg) which i think I copied from ES’s scraper. no_thumb says skip a thumbnail which isn’t used by ES i just include it since it is part of the gamelist spec. I always convert the image to jpg and don’t include an option to change it right now so if you have png’s you could convert or i can expose a flag to choose the image format.

    in reply to: Compiling from Github?? #89382
    sselph
    Participant

    that package is using cmake so you’d have to do:

    $ cd vbam-libretro
    $ cmake .

    That should get you going down the right track but I’m sure there will be other issues to resolve like missing package, etc.

    in reply to: Auto Scraper v0.6 #89372
    sselph
    Participant

    ceuse:
    I’ve got an open issue on github to allow appending to an existing gamelist and if I get than implemented it will have options on how to handle conflicts.

    I have a tool that will report missing rom data and create a CSV. If I modified that slightly to add allow you to add your own ID information, that could be used as input to the script to fetch the missing data for those files. It has the side effect of allowing you to send it to me so that I could improve my DB in the future.

    zbh23:
    Nice I hadn’t seen that. I wrote this because the older version of that script and the ES scraper weren’t very good unless you manually chose everything. Maybe people can use it to find things my scraper doesn’t know about.

    sselph
    Participant

    Think you’d need to modify it to:
    gitPullOrClone “$md_build” “https://github.com/Aloshi/EmulationStation” “gamelistdb”

    From looking at
    https://github.com/retropie/RetroPie-Setup/blob/2ea2182b647c86d2a63266ed61bc057cd6183f67/scriptmodules/helpers.sh#L242

    Branch defaults to master if it isn’t supplied.

    in reply to: My first Pi project: a noob discovers Retropie #89069
    sselph
    Participant

    Basically. I sha1 hash the local rom data after extracting it from the rom files. Not as simple as a hash of the entire file for some systems like nes which has headers and megadrive/n64 which have byte swapping going on. That hash is looked up in a csv I maintain of hash to ID in thegamesdb.

    in reply to: Compiling retroarch – no suitable C compiler #89051
    sselph
    Participant

    Just a guess but maybe try __platform=rpi2 sudo ~/RetroPie-Setup/retropie_setup.sh to remind it that you are using a rpi 2.

    EDIT:
    I just looked on my rpi2 and this variable is already set to rpi2 so probably not that.

    in reply to: My first Pi project: a noob discovers Retropie #88996
    sselph
    Participant

    Great to see you got everything working, that is half the fun. Well more than half the fun for me since I end up writing more code to make it “quicker” to setup and maintain my retropie than I do actually playing.

    I write the script that does the scraping. An easier method that doesn’t involve filezilla is probably to just download it directly to the pi. This will get the current version for the rpi2 and extract it to the path.

    $ wget https://github.com/sselph/scraper/releases/download/v0.6.3-beta/scraper_rpi2.zip
    $ sudo unzip scraper_rpi2.zip scraper -d /usr/local/bin/

    Then you can just cd to the rom folder and run scraper:

    $ cd ~/RetroPie/roms/snes
    $ scraper -thumb_only
    in reply to: Cannot SSH Into RetroPie #88993
    sselph
    Participant

    Questions?
    Is the windows machine on wired or wireless?
    Are the wired and wireless router the same device?
    What is the ip of the windows machine?
    Is the pi connected to any kind of guest wireless network?
    Do you have issues connecting to/from other devices on the wireless network?

    Traffic doesn’t seem to be passing to/from the windows machine and the pi. My thinking is they are isolated somehow, either physically or logically.
    If your access point and wired router are different devices and you have different subnets, you’ll want to switch your wireless router to bridge mode and disable its DHCP server.
    If they are the same device your router may be have some option to disable isolation or bridge the two networks

    in reply to: Only 60MB for ROMS on my 8 GB SD card #88744
    sselph
    Participant

    Also on my 310 I had to have the switch on the back set to X. I did that a long time ago so I don’t know if that is still the case.

    in reply to: Emulation Station Not Booting #88741
    sselph
    Participant

    You could connect a keyboard and try entering the command
    $ emulationstation
    If that works then it just isn’t booting to ES and you could fix it by doing:
    $ sudo ~/RetroPie-Setup/retropie_setup.sh
    Under Setup there is an option to Auto-Start EmulationStation

    in reply to: Cannot SSH Into RetroPie #88738
    sselph
    Participant

    My assumptions from reading the previous posts. If they are wrong let me know.

    • SSH works when you have a wired connection
    • SSH doesn’t work over a wireless connection
    • The wireless device can access the internet
    • You can’t ping the pi over a wireless connection

    Questions:
    Is the computer attempting to connect to the pi wired or wireless?

    Things to Check:
    You can try checking your routers settings. Some routers are able to isolate each wifi client from each other and the lan. Look for something mentioning isolation.

    in reply to: USB Rom Storage Curiosity #88737
    sselph
    Participant

    One option that might work is to symlink the ~/RetroPie/roms directory to the usb drive’s roms directory.
    something like:

    $ sudo rm -rf ~/RetroPie/roms
    $ ln -s /media/usb/roms ~/RetroPie/roms

    There is also a USB ROM service under in the setup script
    sudo ~/RetroPie-Setup/retropie_setup.sh
    Under setup you’ll see the option. This appears to install a hook into the usbmount service so that when you plug in a usb drive it attempts to sync that with your local roms directory. I haven’t used it so don’t know how well it works and it isn’t quite what you wanted.

    in reply to: Where are "Scraped" data files? #88733
    sselph
    Participant

    I don’t want to derail the topic too much but the only things I can think of are that the permissions on the image folders is messed up or there is possibly some odd file naming I am not handling correctly. You can run sudo ~/RetroPie-Setup/retropie_setup.sh and under setup there is an option reset ownership/permissions of roms. If that doesn’t work, you could send me a private message with a snippet of your gamelist.xml so I can see a few of the image lines. Also a snippet of the results of ls ~/RetroPie/roms/<emulator>/images so I can see how the file actually appear in the filesystem.

    in reply to: Emulationsstation vs. LXDE #88646
    sselph
    Participant

    sudo ~/RetroPie-Setup/retropie_setup.sh
    The under Setup there is an option to autostart emulationstation

    in reply to: Running script when launching rom #88620
    sselph
    Participant

    In the bash script you’d do:

    your_script.py set $command
    eval $command
    your_script.py clear
    

    You might have to do
    your_script.py set "$command"

    Then in your python script you do something like this. sys.argv[1] has the action and sys.argv[2] has the full command in it. So you’d need to try and extract the rom file name off the end but since it could contain spaces the split is tricky. Then you could optionally look up the pretty name from the gamelist. There might be a better way to do the xml look up and there are bound to be typos or errors but you get the idea.

    import sys
    from os import path
    from AndyPi_LCD import AndyPi_LCD
    import lxml.etree as ET
    
    # Clear the screen
    if sys.argv[1] == "clear":
      lcd=AndyPi_LCD()
      lcd.lcd_init()
      lcd.led(512)
      lcd.static_text(1,"c","RetroPie v.2.6.0")
      lcd.static_text(2,"c","")
      return 0
    
    # Assume the command was set.
    command = sys.argv[2]
    file_path = command.replace('\ ', '___').split()[-1].replace('___', ' ')
    dir, file_name = path.split(file_path)
    root = ET.parse('%s/gamelist.xml' % dir)
    namelcd = file_name
    for game in root.iter('game'):
      if game.find('path').text == './%s' % file_name:
        namelcd = game.find('name').text
        break
    
    lcd=AndyPi_LCD()
    lcd.lcd_init()
    lcd.led(512)
    lcd.static_text(1,"c","Playing:")
    lcd.static_text(2,"c",namelcd)
    
    in reply to: Error scraping FBA games #88618
    sselph
    Participant

    You have to add the -mame flag, if you are scraping mame to tell it to use that logic vs the original hashing logic. The original script attempts to locate the rom data and hash the contents even inside zip files but with mame I just look at the name of the zip.

    in reply to: Where are "Scraped" data files? #88595
    sselph
    Participant

    ES currently checks the rom folder first. So you can place the gamelist in the same folder as the roms themselves and it should work. The images can be anywhere as long as the gamelist is referencing the correct location. So you’d need to do some find and replace foo in the existing gamelist if you wanted to move images.

    The default behavior of my scraper is to run it inside the rom directory and it creates the images and gamelist in that folder so the entire thing can be moved together. This was the opposite of the ES approach where he wanted to keep the rom folder free of extra stuff.

    in reply to: Error scraping FBA games #88593
    sselph
    Participant

    The error seems to be because it can’t open
    /home/pi/.emulationstation/downloaded_images/fba/1944-image.jpg for writing.
    There could be a few causes. You can check to see if the folders exist. It should create them for you but if the folder didn’t exist you’d get an error like that. You could also check the permissions of the folders to ensure that everything is writable by pi.

    I didn’t specifically add FBA support but if it is in the mamedb.com it might work with the -mame flag.

    in reply to: Running script when launching rom #88592
    sselph
    Participant

    If this approach works a simplification could be to pass $command in the bash script to your script. Since the command typically has the rom path as the last argument you should be able to parse it to extract the currently playing game. Might be easier than trying to figure out which gamelist was updated last. This would be before the eval $command which actually starts the emulation. Then after that you can add a call to the script to update the screen to remove the currently playing game since you have exited.

    in reply to: Running script when launching rom #88588
    sselph
    Participant

    The Emulators are started with the command listed in /etc/emulationstation/es_systems.cfg

    You’ll see each system listed with a command that is invoked.

      <system>
        <fullname>Nintendo Entertainment System</fullname>
        <name>nes</name>
        <path>~/RetroPie/roms/nes</path>
        <extension>.nes .NES .zip .ZIP</extension>
        <command>/opt/retropie/supplementary/runcommand/runcommand.sh 4 "/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/neslibretro/fceumm_libretro.so --config /opt/retropie/configs/all/retroarch.cfg --appendconfig /opt/retropie/configs/nes/retroarch.cfg %ROM%" "neslibretro"</command>
        <platform>nes</platform>
        <theme>nes</theme>
      </system>

    So you might be able to modify this script to invoke your script. /opt/retropie/supplementary/runcommand/runcommand.sh

Viewing 35 posts - 71 through 105 (of 165 total)