1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Dismiss Notice

Release REICAST - Dreamcast Emulator

Discussion in 'Software Releases' started by ptitSeb, Dec 22, 2013.

  1. ptitSeb

    ptitSeb Serial Porter

    Joined:
    Aug 15, 2012
    Messages:
    7,477
    Location:
    France, near Lyon
    Here is REICAST, a Dreamcast emulator.

    [​IMG]
    This version is for now Alpha version. So expect Crashes!

    Also, there is no GUI for now, so I just used some simple zenity dialog to choose gdrom file image.
    You will need BIOS file for this to start (2 files, dc_bios.bin, 2Mo and dc_flash.bin 128ko).
    For the VMU, 2 blank VMU will be created at 1st start. Go to BIOS to format them (to launch BIOS, cancel the zenity file picker dialog).
    A wiki is open here, please update with your results: http://pandorawiki.org/Reicast_Compatibility_List

    Sources can be found here: https://github.com/reicast/reicast-emulator

    In-game key:
    • Use "f" to switch frameskip off/1/2/3 (off by default)
    • Use "s" to switch sound (on by default)
    • Use "w" to swap dpad / left nub function
    • Use "a" to switch left nub accuracy from accurate / fast (accurate by default)
    • Use "c" to show/hide Performance info (default to hide).
    Still no OSD for now


    /!\
    This Software put lots of pressure on the CPU and GPU.

    You will have crash on high Overclock
    GPU Driver is a sentivite mater here.
    For Gigahertz model, use at least v4.03.002 version
    For Rebirth model, use 4.03.002 or a 4.04
    For CC, use 4.04 or 4.00
    /!\


    History log
    =========

    build 13
    -----------

    • Updated sources
    • Improve "f" frameskip. Now it canbe Off or force to skip 1 to 4 frames
    • Added "w" to swap DPad and LeftNub function
    • Added "a" to switch the precision of the left nub. Default to Accurate.
    • Improved speed with Sound on. Almost same speed as with sound off.
    build 12
    -----------

    • Updated sources
    build 11
    -----------

    • In synch with official sources
    build 10
    -----------

    • In synch with official sources
    • Added back the frameskip "f" option (probably usefull only for CC / Rebirth model).
    build 09
    -----------

    • In synch with official sources
    build 08
    -----------

    • In synch with official r6 release
    • No microphone support for now
    • Remove "f" for frameskip as it was not efficient.
    • You still have "s", "n" and "c" with some OSD infos :)
    build 07
    -----------

    • Fixed Right Nub. "n" has an effect now.
    build 06
    -----------

    • Now with some OSD messages
    • Use "c" to have some perf counter on screen
    • Try to make the Left nub less sensitive
    build 05
    -----------

    • this build had broken left nub, grab build 06.
    build 04
    -----------

    • In synch with r6 release
    • Added a few opcode to dynarec, optimized by cal84maniac
    • Better Zenity menu, thanks to dgame
    • Right Nub can be configured on the flyUse "n" to silently switch mode
    • Mode are "none", "up/down->R/L", "left/right->L/R", "ABXY"
    build 03
    -----------

    • NVRam is now saved at exit
    • A few other minor things
    build 02
    -----------

    • improved zenity dialog
    • few small changes

    build 01
    ----------

    • Initial build
    • Controls fully customized to the Pandora
    • Analog Controls works
    • Fullscreen & Sound
    • VMU enabled

    For the curious, the diff of the current Pandora against git is there: reicast_pandora.tgz (there are a few useless changes that I should clean up... I'll do it at next update probably).
     
    Last edited: Nov 21, 2016
    Tags:
    ndbsolar, rohezal, Wally and 6 others like this.
  2. Linux-SWAT

    Linux-SWAT Advanced Member

    Joined:
    Feb 13, 2010
    Messages:
    7,750
  3. CAZMIESTER

    CAZMIESTER Active Member

    Joined:
    May 30, 2010
    Messages:
    966
    Is there a pnd or firmware to update the gpu driver rather than having to use command line prompts
     
  4. ekianjo

    ekianjo Hardcore Member

    Joined:
    May 7, 2012
    Messages:
    8,240
    Location:
    神戸市、日本 (Japan)
    yes there is look in the boards a topic from notaz or read pandoralive i made a whole post just about that.
     
    Impulss likes this.
  5. CAZMIESTER

    CAZMIESTER Active Member

    Joined:
    May 30, 2010
    Messages:
    966
    That is command line not just an update dont like dipping into the unknown
     
  6. ekianjo

    ekianjo Hardcore Member

    Joined:
    May 7, 2012
    Messages:
    8,240
    Location:
    神戸市、日本 (Japan)
    no its a pnd check on pandoralive seiously you have step by step instructions there.
     
  7. Wrath Of Khan

    Wrath Of Khan Soul soother...

    Joined:
    Dec 29, 2009
    Messages:
    5,062
    Location:
    Ireland
    ^^^did not know this. I will try it later.
     
  8. Shenmue

    Shenmue The only thing constant is change

    Joined:
    Dec 19, 2012
    Messages:
    4,266
    Location:
    Dobuita
    I know it's still early, but is there a way for RIECAST to automatically switch to the proper regional bios for games?  I have mixed bag of Pal, US, and Jap games for my modded Dreamcast in the early days.  It is a pain now in RIECAST to manually copy a replace correct region bios.
     
  9. CAZMIESTER

    CAZMIESTER Active Member

    Joined:
    May 30, 2010
    Messages:
    966
    I have come to the conclusion if you have a cc pandora this is a waste of time tried updating 4.00 is the default and struggles to render 1/4 of the screen at very low framerate 4.04 and 4.03 garbles up the text to green characters and renders the screen at low framerate with blackened graphics tested soul calibur on cc pandora oc to 1ghz
     
  10. dgame

    dgame Active Member

    Joined:
    Oct 1, 2006
    Messages:
    935
    On the 1 Ghz the 4.03 GPU/SGX driver seems faster but it does not do the lighting effects correctly. In Skies of Arcadia many of the visual lighting effects (lens flare, flashy magic, etc.) don't show up or are incorrect when using the 4.03 driver.

    I use 4.10.00.01 found here:

     
    Last edited by a moderator: Dec 22, 2013
  11. ndbsolar

    ndbsolar Member

    Joined:
    Apr 19, 2005
    Messages:
    230
    Location:
    Wiltshire, UK
    How does this not have a million replies? Thank you so much for doing this ptitSeb :)  
     
  12. Shenmue

    Shenmue The only thing constant is change

    Joined:
    Dec 19, 2012
    Messages:
    4,266
    Location:
    Dobuita
  13. Zero3K

    Zero3K Active Member

    Joined:
    Sep 27, 2003
    Messages:
    828
    Location:
    USA
    I have an issue to report regarding it. Which is that its not saving the date and time after inputting it.
     
  14. ptitSeb

    ptitSeb Serial Porter

    Joined:
    Aug 15, 2012
    Messages:
    7,477
    Location:
    France, near Lyon
    indeed. It's an issue with the PND, Fat32 write access I guess... I'll look into that.

    *EDIT* I think it works, but I'm not sure it likes 2013 dates... I have to dig...
     
    Last edited by a moderator: Dec 22, 2013
  15. ptitSeb

    ptitSeb Serial Porter

    Joined:
    Aug 15, 2012
    Messages:
    7,477
    Location:
    France, near Lyon
    New release, just a few changes, and mainly the zenity dialog that remember the folder.

    build 02

    -----------

    • improved zenity dialog
    • few small changes
     
  16. Zero3K

    Zero3K Active Member

    Joined:
    Sep 27, 2003
    Messages:
    828
    Location:
    USA
    Here's its .out after loading its BIOS, entering a date and then exiting by using the Escape key:

    =======================================================================================

    PND             : /media/PANDORA-SD1/pandora/apps/reicast.pnd
    PND_FSTYPE      : Squashfs
    APPDATADIR      : /media/PANDORA-SD1/pandora/appdata/reicast
    APPDD_FSTYPE    : vfat
    PND_CPUSPEED    : <unset>
    EXENAME         : runscript.sh
    ARGUMENTS       : <unset>
    =======================================================================================
    [ START ]--- Mount the PND ----------
    Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/reicast"
    Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/PANDORA-SD1/pandora/appdata/reicast=rw+nolwh":"/mnt/pnd/reicast=rr" none "/mnt/utmp/reicast"
    [sUCCESS]--- Mount the PND ----------
    [ START ]--- Starting the application ( runscript.sh  ) ----------
    --------------------------------------------------------------
    Setting PATH to /mnt/utmp/reicast:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games
    --------------------------------------------------------------
    Setting LD_LIBRARY_PATH to /mnt/utmp/reicast/lib:/lib:/usr/lib
    No file selected.
    System check
    ============
    Freememory is 385
    Cpu Speed is 600
    Sys Speed is 332
    ./reicast.elf -config config:image=
    SDK: Found 'nub0' joystick with 2 axis and 0 buttons
    sound enabled, dsp openned for write
    set Frequency to 44100, return 0 (rate=44100)
    set dsp to stereo (2 => 0)
    set dsp to 16bits signed audio (16/16 => 0)
    set dsp fragment to 10512016 of 2 bytes (2000 => 131084)
    Home dir is: ./
    ARM VFP-Run Fast (NFP) enabled !
    Linux paging: 00001000 00001000 00000FFF
    common linux setup done
    MAP 00800000 w/ 25165824
    MAP 20000000 w/ 25165824
    MAP 04000000 w/ 16777216
    MAP 06000000 w/ 16777216
    MAP 0C000000 w/ 0
    A8
    vmem reserve: base: 42970000, aram: 62970000, vram: 46970000, ram: 4E970000
    Resetting mem
    Mem alloc successful!Virtual cfg config:image=

    Created SDL Windows (800x480) successfully
    Loaded ./data/dc_bios.bin as bootrom

    Loaded ./data/dc_flash.bin as nvram

    Using Recompiler
    recSh4 Init
    @@    ngen_ResetBlocks()
    Freeing fpcb

         CodeCache addr: 0x19d000 | from: 0x19c3b4 | addr here: 0x19b590
    readm helpers: up to 0019D250
    gdrom: Failed to open image ""

         ARM7_TCB addr: 0x55000 | from: 0x543a8 | addr here: 0x50f40
    Info: EGL version 1.4
    Sh4 Reset
    cntx // fpcb offset: -33816576 // pc offset: -184 // pc A0000000
    Get MemPtr not suported area ; addr=0xA0000000
    Get MemPtr not suported area ; addr=0xA0000018
    Sh4: i-cache invalidation A0000016
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at A0000016
    Get MemPtr not suported area ; addr=0x80000080
    Get MemPtr not suported area ; addr=0x800000A8
    Get MemPtr not suported area ; addr=0x800000BE
    Get MemPtr not suported area ; addr=0x800000C6
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C0000DE
    EGL config: 012342B0, 00000001, 012332D0 800x480
    Invalid GD-DMA start, SB_GDEN=0.Ingoring it.
    VREG = 03 ARMRST 00
    VREG = 03 ARMRST 01
    OSD: 420006
    Error opening ./data/buttons.pngVREG = 03 ARMRST 00
    sh4io: Invalid read access @@ 00000030
    Sh4: i-cache invalidation 8C00DD78
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C00DD78
    bm_GetBlock(001A3FAC) failed ..
    Stale block ..bm_GetBlock(001A3FAC) failed ..
     .. null RBI: 8C00DDA0 -- unlinked stale block
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C00CF78
    DIV32S matched 100% @ 0x8C00CF7E
    div32s 1/0/3
    Invalid GD-DMA start, SB_GDEN=0.Ingoring it.
    Sh4: i-cache invalidation 8C09E6A6
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C09E6A6
    bm_GetBlock(0019F9F8) failed ..
    Stale block ..bm_GetBlock(0019F9F8) failed ..
     .. null RBI: 8C09E6CE -- unlinked stale block
    Sh4: i-cache invalidation AC09D990
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at AC09D990
    VREG = 03 ARMRST 00
    new tactx
    new tactx
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C091086
    DIV32S matched 100% @ 0x8C09108C
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C0911E4
    DIV32S matched 100% @ 0x8C0911EC
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C09126E
    shar <REG_N>
    DIV32S matched 1% @ 0x8C091278
    VREG = 03 ARMRST 01
    VREG = 03 ARMRST 01
    VREG = 03 ARMRST 00
    FOG TABLE Curve match: maxdev: 0.00 cents
    new tactx
    new tactx
    Sh4: i-cache invalidation AC09EC6E
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at AC09EC6E
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C00CF78
    DIV32S matched 100% @ 0x8C00CF7E
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C00D0D6
    DIV32S matched 100% @ 0x8C00D0DE
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C00D160
    shar <REG_N>
    DIV32S matched 1% @ 0x8C00D16A
    Sh4: i-cache invalidation 8C00DD78
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C00DD78
    bm_GetBlock(001A39D0) failed ..
    Stale block ..bm_GetBlock(001A39D0) failed ..
     .. null RBI: 8C00DDA0 -- unlinked stale block
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C00CF78
    DIV32S matched 100% @ 0x8C00CF7E
    div32s 1/0/3
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C00FFFE
    Invalid GD-DMA start, SB_GDEN=0.Ingoring it.
    Sh4: i-cache invalidation 8C09E6A6
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C09E6A6
    bm_GetBlock(0019E240) failed ..
    Stale block ..bm_GetBlock(0019E240) failed ..
     .. null RBI: 8C09E6CE -- unlinked stale block
    Sh4: i-cache invalidation AC09D990
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at AC09D990
    VREG = 03 ARMRST 00
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C091086
    DIV32S matched 100% @ 0x8C09108C
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C0911E4
    DIV32S matched 100% @ 0x8C0911EC
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C09126E
    shar <REG_N>
    DIV32S matched 1% @ 0x8C091278
    VREG = 03 ARMRST 01
    VREG = 03 ARMRST 01
    VREG = 03 ARMRST 00
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C0294A6
    DIV32S matched 100% @ 0x8C0294AC
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C029604
    DIV32S matched 100% @ 0x8C02960C
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C02968E
    shar <REG_N>
    DIV32S matched 1% @ 0x8C029698
    Sh4: i-cache invalidation AC09EC6E
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at AC09EC6E
    Sh4: i-cache invalidation 8C00DD78
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C00DD78
    bm_GetBlock(001A3620) failed ..
    Stale block ..bm_GetBlock(001A3620) failed ..
     .. null RBI: 8C00DDA0 -- unlinked stale block
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C00CF78
    DIV32S matched 100% @ 0x8C00CF7E
    div32s 1/0/3
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C00FFFE
    Invalid GD-DMA start, SB_GDEN=0.Ingoring it.
    Sh4: i-cache invalidation 8C09E6A6
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at 8C09E6A6
    bm_GetBlock(0019E1A8) failed ..
    Stale block ..bm_GetBlock(0019E1A8) failed ..
     .. null RBI: 8C09E6CE -- unlinked stale block
    Sh4: i-cache invalidation AC09D990
    @@    ngen_ResetBlocks()
    Freeing fpcb
    recSh4:Dynarec Cache clear at AC09D990
    VREG = 03 ARMRST 00
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C091086
    DIV32S matched 100% @ 0x8C09108C
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C0911E4
    DIV32S matched 100% @ 0x8C0911EC
    div32s 1/0/3
    movt <REG_N>
    DIV32S matched 1% @ 0x8C09126E
    shar <REG_N>
    DIV32S matched 1% @ 0x8C091278
    VREG = 03 ARMRST 01
    VREG = 03 ARMRST 01
    VREG = 03 ARMRST 00
    subc <REG_M>,<REG_N>
    DIV32S matched 1% @ 0x8C0294A6
    DIV32S matched 100% @ 0x8C0294AC
    div32s 1/0/3
    Texture cache cleared
    Fatal error : death by escape key
     in HandleEvents -> ../../newdc/sdl/main.cpp : 328

    SIGSEGV @ fault_handler+0x0083E6DC ... 00000000 -> was not in vram
    Fatal error : segfault
     in fault_handler -> ../../newdc/linux/common.cpp : 66

    ./runscript.sh: line 104:  2083 Segmentation fault      ./reicast.elf -config config:image="$CDFILE"
    [sUCCESS]--- Starting the application ( runscript.sh  ) ----------
    [ START ]--- Restoring the frame buffer status ----------
    [sUCCESS]--- Restoring the frame buffer status ----------
    [ START ]--- uMount the PND ----------
    [ START ]--- Waiting the Union to be available ----------
    [sUCCESS]--- Waiting the Union to be available ----------
    auplink:plink.c:223: AUFS_CTL_PLINK_MAINT: Inappropriate ioctl for device
    rmdir: failed to remove `/mnt/utmp/reicast': Device or resource busy
    [ START ]--- Waiting the PND mount dir to be free ----------
    [sUCCESS]--- Waiting the PND mount dir to be free ----------
    cleanup done
    [sUCCESS]--- uMount the PND ----------
    =======================================================================================
    Return code is : 17
     
  17. ptitSeb

    ptitSeb Serial Porter

    Joined:
    Aug 15, 2012
    Messages:
    7,477
    Location:
    France, near Lyon
    @Zero3K: I don't see anything out of the ordinary in the log. Try setting a date in 1998-2002 range to see if it works?
     
    Last edited by a moderator: Dec 22, 2013
  18. Zero3K

    Zero3K Active Member

    Joined:
    Sep 27, 2003
    Messages:
    828
    Location:
    USA
    It still forgets the date and time.
     
  19. ptitSeb

    ptitSeb Serial Porter

    Joined:
    Aug 15, 2012
    Messages:
    7,477
    Location:
    France, near Lyon
    and just select the default date?
     
  20. NoeleyC

    NoeleyC Well-Known Member

    Joined:
    Oct 23, 2008
    Messages:
    1,348
    Got Bomberman Online running on a IS bios. Very slow with lots of graphical glitches. Metropolis Street Racer is quote playable but no sound in game
     

Share This Page

Loading...