Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

Odroid XU4 challenges after installing Retropie



  • @mitu Okay I pasted it to pastebin as requested the link is as follows: https://pastebin.com/ZbLRJJmL

    Also my runcommand.info indicated that I was using xroar even though the log seems to show it went with lr-mess. I have cut that content below incase it is relevant.

    coco
    xroar-4Coco2bExtB64KDOS
    /home/pi/RetroPie/roms/coco/DK.DSK
    /opt/retropie/emulators/xroar/bin/xroar -fs -vo sdl --ccr simple -disk-write-back -machine cocous -bas bas13.rom -extbas extbas11.rom -dos disk12.rom -ram 64 -kbd-translate -run "/home/pi/RetroPie/roms/coco/DK.DSK"

    Thanks again for all your help.


  • Global Moderator

    Hm, it looks like it's more complicated than it sounds. Mess uses its own ROM list - software list - and the ROM names might not match.
    What I've done is run the coco3 ROM - which seems to launch fine.

    [libretro INFO] Starting game from command line:coco3
    [libretro INFO] ARGUV[0]=coco3
    [libretro ERROR] parse path failed! path=coco3.
    [libretro ERROR] parse systemname failed! path=coco3
    [libretro INFO] Game name: coco3, Game description: Color Computer 3 (NTSC)
    [libretro INFO] Game name: coco3, Game description: Color Computer 3 (NTSC)
    [libretro INFO] System found: coco3
    Adding monitor screen0 (640 x 480) a:1.333333
    SOURCE FILE: ../../../../../src/mame/drivers/coco3.cpp
    PARENT: coco
    NAME: coco3
    DESCRIPTION: Color Computer 3 (NTSC)
    YEAR: 1986
    MANUFACTURER: Tandy Radio Shack
    [libretro INFO] RES:1
    [libretro INFO] MAIN FIRST
    [INFO] Environ SET_GEOMETRY.
    [INFO] SET_GEOMETRY: 640x240, aspect: 1.333.
    w:640 h:240 a:1.333333
    ^C[INFO] Content ran for a total of: 00 hours, 00 minutes, 17 seconds.
    [INFO] Unloading game..
    [INFO] Unloading core..
    

    I've found https://forums.libretro.com/t/guide-play-non-arcade-systems-with-mame-or-mess/17728 as a guide to launch non-arcade systems with the Libretro Mess/Mame cores, but I've had limited success using it.
    Maybe you can launch the CoCo3 ROM and then load the .dsk file manually ? I'll dig some more info to see if can successfully launch a game.



  • @mitu When you say you ran the coco3 rom. Do you mean coco3.zip which is the bios file or some other coco 3 file?

    If we can get it to launch into the Coco 3 screen with basic and disk basic I should be able to run the files no issue.

    Thanks again getting help on this specific topic is difficult the online info on running Mess under retropie or anyway for that matter is confusing at best.


  • Global Moderator

    @Oldguy I mean what you call the BIOS (coco3.zip):

    zipinfo coco3.zip
    Archive: coco3.zip
    Zip file size: 28940 bytes, number of entries: 3
    -rw-a--     2.0 fat    32768 b- defN 01-Feb-28 16:06 coco3.rom
    -rw-a--     2.0 fat     8192 b- defN 01-Feb-28 16:06 disk11.rom
    -rw-a--     2.0 fat       94 t- defX 04-Jun-06 00:56 coco3.txt
    

    I've done a few more experiments and got something closer

    • created a folder coco3 in the coco ROM folder (the parent folder doesn't matter)
    • put the dkong.zip and coco3.zip in the coco3 folder
    • launched the dkong.zip

    The game doesn't launch, but I think it might attach the dkong.zip as a disk (maybe ?):

    [libretro INFO] Starting game:/home/pi/RetroPie/roms/coco/coco3/dkong.zip
    [libretro WARN] Driver dkong not found -1
    [libretro ERROR] Driver not found dkong
    [libretro INFO] Game name: coco3, Game description: Color Computer 3 (NTSC)
    [libretro ERROR] System not found: coco3
    [libretro INFO] Game name: coco3, Game description: Color Computer 3 (NTSC)
    [libretro INFO] Creating frontend for game: dkong
    [libretro INFO] Softlists: 1
    Adding monitor screen0 (640 x 480) a:1.333333
    SOURCE FILE: ../../../../../src/mame/drivers/coco3.cpp
    PARENT: coco
    NAME: coco3
    DESCRIPTION: Color Computer 3 (NTSC)
    YEAR: 1986
    MANUFACTURER: Tandy Radio Shack
    WARNING: support for software dkong (in list coco_flop) is only partial
    [libretro INFO] RES:1
    [libretro INFO] MAIN FIRST
    [INFO] Environ SET_GEOMETRY.
    [INFO] SET_GEOMETRY: 640x240, aspect: 1.333.
    w:640 h:240 a:1.333333
    ^C[INFO] Content ran for a total of: 00 hours, 00 minutes, 14 seconds.
    [INFO] Unloading game..
    [INFO] Unloading core..
    

    Note that the dkong.zip is the MESS format ROM, containing just dk.dsk - see here for the MESS softlist entry.

    Did you try to run the ROM with the PC Mame/Mess ?



  • @mitu I tried what you outlined and I still get a Segmentation fault error in my runcommand.log. I have not tried this on a PC as I run a mac at home. I have an image I got from the color computer archive group that only has CoCo stuff installed but it is for a Pi and the Mess emulator was just slow. I had to skip so many frames to get a viable speed that the play was not good. I was hoping the Odroid would help solve the problem as it seems to be driving many systems much better now. I even tried a Retro Arena image but I get similar errors and challenges on that one also. I have seen a few comments on the web but they are all pretty old and I think are out of date. I do appreciate your help I was hoping to be able to simulate the Coco3. I realize this is an odd platform.

    I have confirmed my dk.dsk or dkong.zip file is the proper file as I ran the crc32 and it matches the count in the disk file for Mess.


  • Global Moderator

    I know why you're getting the error - you're missing the softlist .xml file (see step 5 below).
    Here's a rundown of what's I've done so far (taken from scratch):

    1. make sure the CoCo system is registered - install xroar ( you already have this).
    2. install lr-mess - you probably already have this also.
    3. modify the /opt/retropie/configs/coco/emulators.cfg file and add lr-mess as an emulator:
    lr-mess = "/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mess/mess_libretro.so --config /opt/retropie/configs/coco/retroarch.cfg %ROM% --verbose"
    
    1. add a sub-folder for the CoCo3 system in the main CoCo ROM folder.
    • copy the BIOS files (coco3.zip) there. The file should contain the coco3.rom and disk11.rom files.
    • copy your ROM (in MESS zip format) into the same coco3 folder. The software lists are at https://github.com/mamedev/mame/tree/master/hash (look for the coco ones). For instance, I have dkong.zip containing dk.dsk for Donkey Kong.
    1. download the coco_flop.xml and coco_cas.xml files to /home/pi/RetroPie/BIOS/mame/hash. If that folder doesn't exist, create it with
    mkdir /home/pi/RetroPie/BIOS/mame/hash
    
    1. You should now be able to run the CoCo3 emulator with
    /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mess/mess_libretro.so --config /opt/retropie/configs/coco/retroarch.cfg "<PATH_TO_ROM>"
    

    for instance

    /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mess/mess_libretro.so --config /opt/retropie/configs/coco/retroarch.cfg "/home/pi/RetroPie/roms/coco/coco3/dkong.zip"
    

    Note that the game doesn't start automatically, you need to load it. This is the part that I couldn't verify, since I don't have a keyboard on my PI, but there's a tip for each game in the MESS softlist on how to load it.

    1. to teach Emulationstation to load .zip files, since the coco system doesn't have .zip as a registered extension. Follow the instructions in the Docs and create your own customised es_systems.cfg, then modify the coco_exts line to include the .zip extensions
    <system>
        <name>coco</name>
        <fullname>TRS-80 Color Computer</fullname>
        <path>/home/pi/RetroPie/roms/coco</path>
        <extension>.cas .wav .bas .asc .dmk .jvc .os9 .dsk .vdk .rom .ccc .sna .zip .CAS .WAV .BAS .ASC .DMK .JVC .OS9 .DSK .VDK .ROM .CCC .SNA .ZIP</extension>
        <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ coco %ROM%</command>
        <platform>coco</platform>
        <theme>coco</theme>
      </system>
    

    Remember that by creating this file any updates done to systems in Emulationstation (adding/updating) that are managed by the RetroPie-Setup script will not appear in your list of systems. Be aware of this and if you add new emulators, just make sure you synchronise the updates from /etc/emulationstation/es_systems.cfg to your own customized file.



  • @mitu I did all of this and then even tried the dkremix.zip in addition to the dkong.zip . I did not have my retropie image mounted I had my retroarena image mounted but last time I tried both and got the same error. This time I get the same type of fault. Errors out with a segmentation fault after it identifies that it sees dkremix.zip as a good file. I see it even performed a crc32 check against it.

    The error at the end of my log file is as follows:
    /opt/retroarena/supplementary/runcommand/runcommand.sh: line 1035: 4804 Segmentation fault /opt/retroarena/emulators/retroarch/bin/retroarch -L /opt/retroarena/libretrocores/lr-mess/mess_libretro.so --config /opt/retroarena/configs/coco/retroarch.cfg "/home/pigaming/RetroArena/roms/coco/coco3/dkremix.zip" --verbose --verbose --appendconfig /dev/shm/retroarch.cfg

    I also got saw a strange error early in the log that read like this:
    [INFO] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.
    Also had the following errors early on in the log:
    [libretro INFO] Starting game:/home/pigaming/RetroArena/roms/coco/coco3/dkremix.zip
    [libretro WARN] Driver dkremix not found -1
    [libretro ERROR] Driver not found dkremix
    [libretro INFO] Game name: coco3, Game description: Color Computer 3 (NTSC)
    [libretro ERROR] System not found: coco3
    [libretro INFO] Game name: coco3, Game description: Color Computer 3 (NTSC)
    [libretro INFO] Creating frontend for game: dkremix
    [libretro INFO] Softlists: 1

    It seems to think dkremix needs to be a driver or something also did not know what coco3 is a a system?

    Any ideas? I am about ready to assume I just cannot play coco3. I cannot test with my retropie straight image on a raspberry PI until later this week. This test was on my Odroid XU4 on retroarena image that seems to run everything else just fine.

    Thanks again.


  • Global Moderator

    @Oldguy Did you create the hash folder under BIOS and downloaded the necessary .xml files ?



  • @mitu They were created when I installed lr-mess. I did not have to do anything else. The files were listed you told me to download and had the two games listed also. I even tried the coco3h.zip and coco3.zip files as the hash files had a recommendation that dkremix.zip would work better with the coco3h.zip file. Which is why I tried the second game with both bios zip versions just in case.


  • Global Moderator

    In this case, I don't know why it's not working. It's possible that I've added something else besides the step I enumerated in my previous post, but I don't think so.



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.