RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    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

    Reicast (Dreamcast) Emulator Not Playing !

    Scheduled Pinned Locked Moved Help and Support
    56 Posts 17 Posters 72.3k 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.
    • H
      Hyell @krlitosmtnez
      last edited by

      @krlitosmtnez
      if you use 'evtest' commande can you use your controller with ID 3?
      And is ti the correct value on your controller.cfg file?

      In a second time, can you test with ID 2 when you launch reicast?

      K 1 Reply Last reply Reply Quote 0
      • K
        krlitosmtnez @Hyell
        last edited by krlitosmtnez

        @Hyell

        I used the values from reicast-joyconfig

        Yes, I can use evtest with ID 3. I recibe this when I push A button:

        Event: time 1466183037.124242, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e2
        Event: time 1466183037.124242, type 1 (EV_KEY), code 56 (KEY_LEFTALT), value 0
        

        As you can see, is the same code from reicast-joyconfig

        [dreamcast]
        btn_a = 56
        

        ID 2 don't work in reicast-joyconfig. Neither evtest!

        H 1 Reply Last reply Reply Quote 0
        • H
          Hyell @krlitosmtnez
          last edited by

          @krlitosmtnez

          Hum, can you change emu.cfg to use another config file for your controller? A file without blank?
          Or maybe try with another controller, just to validate one configuration?
          I must admit that I have no more ideas :/

          I will check my own configuration to see if we have miss something.

          K 1 Reply Last reply Reply Quote 0
          • K
            krlitosmtnez @Hyell
            last edited by krlitosmtnez

            @Hyell

            Thank you for help, I will check again everything.

            If the file is "controller_NAMECONTROLLER.cfg"

            This "NAMECONTROLLER" is the same name that "Mapping Name" inside the file? And the ID of the controller?

            For example, can I name it "controller_pad.cfg"?

            So inside controller_pad.cfg :

            [emulator]
            mapping_name = Ultimarc IPAC 2 Ultimarc IPAC 2
            

            or

            [emulator]
            mapping_name = pad
            

            Thanks again.

            H 1 Reply Last reply Reply Quote 0
            • H
              Hyell @krlitosmtnez
              last edited by

              @krlitosmtnez

              It's the name of the pad :

              mapping_name = Ultimarc IPAC 2 Ultimarc IPAC 2
              

              and you can have blank.

              but the name of the file is not really important.
              If you have a file named :
              controller_test.cfg

              You just have to put the same name file on emu.cfg

              Have you test with a file named without blank?

              K 1 Reply Last reply Reply Quote 0
              • K
                krlitosmtnez @Hyell
                last edited by

                @Hyell

                Yes, I used "controller_Ultimarc.cfg" and nothing.

                Maybe this could help?

                @JoargTheBard said in Every time I play dreamcast, displays the setting screen time/date:

                the controller config part of my emu.cfg looks like this

                [input]
                evdev_device_id_1 = 2
                evdev_device_id_2 = 3
                evdev_device_id_3 = -1
                evdev_device_id_4 = -1
                evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_8BitdoNES30Pro.cfg
                evdev_mapping_2 = /opt/retropie/configs/dreamcast/mappings/controller_8BitdoNES30Pro.cfg
                joystick_device_id = -1

                @caver01 said in Every time I play dreamcast, displays the setting screen time/date:

                @JoargTheBard said in Every time I play dreamcast, displays the setting screen time/date:

                evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_8BitdoNES30Pro.cfg
                evdev_mapping_2 = /opt/retropie/configs/dreamcast/mappings/controller_8BitdoNES30Pro.cfg

                Wow. I can't believe it. I made it work. I took the spaces out of my mapping file and replaced them with underscores, then commented out the automap line in the .sh file as you instructed. Then I updated my emu.cfg adding this:

                [input]
                evdev_device_id_1 = 4
                evdev_device_id_2 = 5
                evdev_device_id_3 = -1
                evdev_device_id_4 = -1
                evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_Ultimarc_I-PAC_Arcade_Control_Interface.cfg
                evdev_mapping_2 = /opt/retropie/configs/dreamcast/mappings/controller_Ultimarc_I-PAC_Arcade_Control_Interface.cfg
                joystick_device_id = -1
                

                and it actually works. Crazy taxi has a few audio problems on the P3, but it actually worked. Thanks for your help!

                H 1 Reply Last reply Reply Quote 0
                • H
                  Hyell @krlitosmtnez
                  last edited by

                  @krlitosmtnez
                  it's the same test when you use controller_Ultimarc.cfg
                  can you try to edit your controller_ultimarc.cfg to match with this :

                  [emulator]
                  mapping_name = Xbox Gamepad (userspace driver)
                  btn_escape = 316
                  
                  [dreamcast]
                  btn_a = 304
                  btn_b = 305
                  btn_c =
                  btn_d =
                  btn_x = 307
                  btn_y = 308
                  btn_z =
                  btn_start = 315
                  btn_dpad1_left =
                  btn_dpad1_right =
                  btn_dpad1_up =
                  btn_dpad1_down =
                  btn_dpad2_left =
                  btn_dpad2_right =
                  btn_dpad2_up =
                  btn_dpad2_down =
                  axis_x = 0
                  axis_y = 1
                  axis_trigger_left = 2
                  axis_trigger_right = 5
                  
                  [compat]
                  btn_trigger_left = 312
                  btn_trigger_right = 313 
                  axis_dpad1_x = 16
                  axis_dpad1_y = 17
                  axis_dpad2_x =
                  axis_dpad2_y =
                  axis_x_inverted = no
                  axis_y_inverted = no
                  axis_trigger_left_inverted = no
                  axis_trigger_right_inverted = no
                  axis_dpad1_y_inverted = yes
                  axis_dpad1_x_inverted = no
                  
                  K 1 Reply Last reply Reply Quote 0
                  • K
                    krlitosmtnez @Hyell
                    last edited by

                    @Hyell

                    Nooooothing. Incredible. I'm completely lost. I put here the main archives if you need look something else.

                    Thanks again...

                    reicast.sh

                    #!/usr/bin/env bash
                    AUDIO="$1"
                    ROM="$2"
                    rootdir="/opt/retropie"
                    configdir="$rootdir/configs"
                    
                    source "$rootdir/lib/inifuncs.sh"
                    
                    function mapInput() {
                    local js_device
                    local js_device_num
                    local ev_device
                    local ev_devices
                    local ev_device_num
                    local device_counter
                    local conf="$configdir/dreamcast/emu.cfg"
                    local params=""
                    
                    # get a list of all present js device numbers and device names
                    # and device count
                    
                    for js_device in /dev/input/js*; do
                        js_device_num=${js_device/\/dev\/input\/js/}
                                echo "$js_device_num = $js_device_num" > /home/pi/testReicast.log
                        for ev_device in /dev/input/event*; do
                            ev_device_num=${ev_device/\/dev\/input\/event/}
                                        echo "ev_device_num = $ev_device_num" > /home/pi/testReicast.log
                                        echo "check if this exist : /sys/class/input/event$ev_device_num/device/js$js_device_num"
                            if [[ -d "/sys/class/input/event${ev_device_num}/device/js${js_device_num}" ]]; then
                                                echo "Now check if this exist : /sys/class/input/event$ev_device_num/device/name"
                                file[$ev_device_num]=$(grep --exclude=*.bak -rl "$configdir/dreamcast/mappings/" -e "= $(</sys/class/i$
                                if [[ -f "${file[$ev_device_num]}" ]]; then
                                    #file[$ev_device_num]="${file[$ev_device_num]##*/}"
                                    ev_devices[$ev_device_num]=$(</sys/class/input/event${ev_device_num}/device/name)
                                                        echo "Add for controller : /sys/class/input/event$ev_device_num/device/name"
                                    device_counter=$(($device_counter+1))
                                fi
                            fi
                        done
                    done
                    
                    
                    # emu.cfg: store up to four event devices and mapping files
                    if [[ "$device_counter" -gt "0" ]]; then
                        # reicast supports max 4 event devices
                        if [[ "$device_counter" -gt "4" ]]; then
                            device_counter="4"
                        fi
                        local counter=0
                        for ev_device_num in "${!ev_devices[@]}"; do
                            if [[ "$counter" -lt "$device_counter" ]]; then
                                counter=$(($counter+1))
                                params+="-config input:evdev_device_id_$counter=$ev_device_num "
                                params+="-config input:evdev_mapping_$counter=${file[$ev_device_num]} "
                            fi
                        done
                        while [[ "$counter" -lt "4" ]]; do
                            counter=$(($counter+1))
                            params+="-config input:evdev_device_id_$counter=-1 "
                            params+="-config input:evdev_mapping_$counter=-1 "
                        done
                    else
                        # fallback to keyboard setup
                        params+="-config input:evdev_device_id_1=0 "
                    fi
                    params+="-config input:evdev_device_id_1=3 "
                    params+="-config input:joystick_device_id=-1 "
                    params+="-config players:nb=1 "
                    echo "$params"
                    }
                    
                    if [[ -f "$HOME/RetroPie/BIOS/dc_boot.bin" ]]; then
                    params="-config config:homedir=$HOME -config x11:fullscreen=1 "
                    getAutoConf reicast_input || params+=$(mapInput)
                    echo "$params" > /home/pi/testReicast.log
                    if [[ "$AUDIO" == "OSS" ]]; then
                        params+=" -config audio:backend=oss -config audio:disable=0 "
                        aoss "$rootdir/emulators/reicast/bin/reicast" $params -config config:image="$ROM" >> /dev/null
                    else
                        params+=" -config audio:backend=alsa -config audio:disable=0"
                        "$rootdir/emulators/reicast/bin/reicast" $params -config config:image="$ROM" >> /dev/null
                    fi
                    else
                    dialog --msgbox "You need to copy the Dreamcast BIOS files (dc_boot.bin and dc_flash.bin) to the folder $biosdir to boot the Dreamcast emulator." 22 76
                    fi
                    

                    emu.cfg

                    [audio]
                    disable = 0
                    
                    [config]
                    Debug.SerialConsoleEnabled = 0
                    Dreamcast.Broadcast = 4
                    Dreamcast.Cable = 3
                    Dreamcast.RTC = 2097443480
                    Dreamcast.Region = 3
                    Dynarec.Enabled = 1
                    Dynarec.idleskip = 1
                    Dynarec.unstable-opt = 0
                    aica.LimitFPS = 1
                    aica.NoBatch = 0
                    aica.NoSound = 0
                    bios.UseReios = 0
                    pvr.MaxThreads = 3
                    pvr.Subdivide = 0
                    pvr.SynchronousRendering = 0
                    pvr.rend = 0
                    rend.UseMipmaps = 1
                    rend.WideScreen = 0
                    ta.skip = 0
                    
                    [input]
                    evdev_device_id_1 = 3
                    evdev_device_id_2 = -1
                    evdev_device_id_3 = -1
                    evdev_device_id_4 = -1
                    evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/controller_Ultimarc.cfg
                    joystick_device_id = -1
                    
                    [players]
                    nb = 1
                    
                    [reios]
                    ElfFile =
                    
                    [validate]
                    OpenGlChecks = 0
                    

                    Your controller_Ultimarc.cfg

                    [emulator]
                    mapping_name = Ultimarc IPAC 2 Ultimarc IPAC 2
                    btn_escape = 44
                    
                    [dreamcast]
                    btn_a = 356
                    btn_b = 42
                    btn_c =
                    btn_d =
                    btn_x = 29
                    btn_y = 57
                    btn_z =
                    btn_start = 45
                    btn_dpad1_left = 105
                    btn_dpad1_right = 106
                    btn_dpad1_up = 103
                    btn_dpad1_down = 108
                    btn_dpad2_left =
                    btn_dpad2_right =
                    btn_dpad2_up =
                    btn_dpad2_down =
                    axis_x =
                    axis_y =
                    axis_trigger_left = 2
                    axis_trigger_right = 5
                    
                    [compat]
                    btn_trigger_left = 2
                    btn_trigger_right = 6
                    axis_dpad1_x =
                    axis_dpad1_y =
                    axis_dpad2_x =
                    axis_dpad2_y =
                    axis_x_inverted = no
                    axis_y_inverted = no
                    axis_trigger_left_inverted = no
                    axis_trigger_right_inverted = no
                    axis_dpad1_y_inverted = no
                    axis_dpad1_x_inverted = no
                    

                    reicast-joyconfig info

                    0: Barcode Reader  (/dev/input/event0, usb-3f980000.usb-1.3/input0)
                    1: Barcode Reader  (/dev/input/event1, usb-3f980000.usb-1.3/input1)
                    2: Ultimarc IPAC 2 Ultimarc IPAC 2 (/dev/input/event2, usb-3f980000.usb 1.2/input0)
                    3: Ultimarc IPAC 2 Ultimarc IPAC 2 (/dev/input/event3, usb-3f980000.usb-1.2/input1)
                    4: Ultimarc IPAC 2 Ultimarc IPAC 2 (/dev/input/event4, usb-3f980000.usb-1.2/input2)
                    5: Ultimarc IPAC 2 Ultimarc IPAC 2 (/dev/input/event5, usb-3f980000.usb-1.2/input3)
                    Please enter the device id: 3
                    Using device 3...
                    Name: Ultimarc IPAC 2 Ultimarc IPAC 2
                    File: /dev/input/event3
                    Phys: usb-3f980000.usb-1.2/input1
                    

                    Test with reicast-joyconfig...

                    Do you want to map a button to exit the emulator [Y/n] y
                    Press the that button now...
                    emulator escape button mapped to 3 (KEY_2).
                    Do you want to map the A button? [Y/n] y
                    Press the A button now...
                    A button mapped to 56 (KEY_LEFTALT).
                    Do you want to map the B button? [Y/n] y
                    Press the B button now...
                    B button mapped to 42 (KEY_LEFTSHIFT).
                    Do you want to map the C button? [Y/n] n
                    Do you want to map the D button? [Y/n] n
                    Do you want to map the X button? [Y/n] y
                    Press the X button now...
                    X button mapped to 29 (KEY_LEFTCTRL).
                    Do you want to map the Y button? [Y/n] y
                    Press the Y button now...
                    Y button mapped to 57 (KEY_SPACE).
                    Do you want to map the Z button? [Y/n] n
                    Do you want to map the START button? [Y/n] y
                    Press the START button now...
                    START button mapped to 45 (KEY_X).
                    
                    1 Reply Last reply Reply Quote 0
                    • K
                      krlitosmtnez
                      last edited by krlitosmtnez

                      Ok... I used a DualShock 4 and works awesome.

                      It's ok, but the idea is use the cabinet controls. At least I can confirm that all the configuration it's ok.

                      Maybe the thing is located in the IPAC imput/event things.

                      :-)

                      1 Reply Last reply Reply Quote 0
                      • H
                        Hyell
                        last edited by

                        @krlitosmtnez

                        It's really strange.
                        I think issue is on reicast code source.

                        I found this, but they don't give solution :
                        http://libretro.com/forums/showthread.php?t=5275

                        and this :
                        https://www.reddit.com/r/RetroPie/comments/42a3rd/can_i_run_mupen64plus_or_reicast_with_the/?
                        put IPAC 2 on gamepad position...
                        Can you try this?

                        K 1 Reply Last reply Reply Quote 0
                        • K
                          krlitosmtnez @Hyell
                          last edited by

                          @Hyell

                          There is only 8 gamepad inputs, not enough for the Joystick and the Player 2.

                          alt text

                          I'm ok with the gamepads. The best option is the cabinet controls, but I'll continue looking for that in the future.

                          Thank you so much for your time. I really appreciate your help.

                          1 Reply Last reply Reply Quote 0
                          • F
                            FOGOR @dmanthing
                            last edited by

                            @dmanthing I was having the exact same problem as you, but I just double checked and all my file sizes appear to have copied fully. I cannot access the system manager either. Any other possible fixes?

                            P 1 Reply Last reply Reply Quote 0
                            • P
                              pimpmaul69 @FOGOR
                              last edited by

                              @FOGOR said in Reicast (Dreamcast) Emulator Not Playing !:

                              @dmanthing I was having the exact same problem as you, but I just double checked and all my file sizes appear to have copied fully. I cannot access the system manager either. Any other possible fixes?

                              Are the games you have tried listed in the dreamcast compatibily list?
                              https://docs.google.com/spreadsheets/d/1AD91IcudqHP7dDmEXLO25Pzb85uUgAy4chU2QxlZBQk/htmlview?pli=1#

                              1 Reply Last reply Reply Quote 0
                              • S
                                sreisig1 @pablo
                                last edited by

                                @pablo said in Reicast (Dreamcast) Emulator Not Playing !:

                                borted

                                I'm having the same issue. Was working before I updated reicast. Tried to uninstall and reinstall. Getting close to the same error as you in runcommand after trying to run system manager. I tried having keyboard plugged in as well as controller connected like you said and still not working for me.

                                terminate called after throwing an instance of 'std::logic_error'
                                what(): basic_string::_S_construct null not valid
                                /opt/retropie/emulators/reicast/bin/reicast.sh: line 76: 1005 Aborted
                                aoss "$rootdir/emulators/reicast/bin/reicast" $params -config config:image="$ROM" >> /dev/null

                                1 Reply Last reply Reply Quote 0
                                • S
                                  Sonic_Boi
                                  last edited by

                                  I know this is an old thread, just thought I'd use it instead of creating a new one. I'm having the same issues and need help.

                                  I'm running RetroPie 4.1 on a RaspberryPi 3. When I try to load a Dreamcast Rom it just goes right back to the rom list. They are all compatible games, I've checked the list. I've tried multiple BIOS files. They are in the correct folder on the retropie.

                                  I'm also not seeing the "system manager" selection in the Rom list. Don't know if that has anything to do with it. I've watched many tutorials on how to download or re download Reicast. But all those tutorials were on older versions of RetroPie.
                                  So I'm not sure how to redownload it on 4.1.
                                  Any help would be great. Just need games to play and I can't get past rom menu.

                                  S 1 Reply Last reply Reply Quote 0
                                  • S
                                    Sonic_Boi @Sonic_Boi
                                    last edited by

                                    @Sonic_Boi
                                    Looks like with an update to reicast j got it fixed.

                                    The roms now play, however most games are moving in fast motion. The game play seems to be on 2X or 3X speed. I'll need to figure this out.

                                    1 Reply Last reply Reply Quote 0
                                    • TualatinT
                                      Tualatin
                                      last edited by

                                      i have same problem, even in retroarch i start reicast it off emu. Tested on pc mint(ubuntu), have any idea ?

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        Rogimb @Hyell
                                        last edited by

                                        @hyell Hi, I am new with retropie/raspberry and I am having trouble with dreamcast too. I did what you wrote above, in addition updated from binary, from source, tried to change the controls several times (always changing the position of buttons), checked the BIOS (they are ok!), roms are in the correct/supported format...but it is not working.. "+Star Reicast" is there in the list of roms, followed by the rom, however when I start it , there is a time/date screen, I move/change the date and time, then I click "select" (green button) and it goes back to roms list. Please, do you have some idea to solve this? can you give me some light? [Raspberry Pi 3 model B Retropie 4.2v.]

                                        1 Reply Last reply Reply Quote 0
                                        • R
                                          ro32xx
                                          last edited by

                                          I managed to get working via:


                                          To get past the date/time screen, i needed my controller configured in Reicast.

                                          1 Reply Last reply Reply Quote 0
                                          • sunwindS
                                            sunwind @herb_fargus
                                            last edited by

                                            @herb_fargus downvoted for useless information

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