Emulator:reicast

From Wah!ki
Jump to: navigation, search

**** THIS PAGE IS A WORK IN PROGRESS ****

About

reicast is an incredibly fast and compatible native Linux/Android emulator for the SEGA Dreamcast.

Configuration

Platform Version Device Exec Type commandline_format
Linux GIT ISO <compiled_from_source>/reicast.elf D "[rompath]/[name].[romext]"

Configuration Location

Configuration file is ascii/text located in $HOME/.config/reicast/emu.cfg

BIOS Files

BIOS files should be placed in $HOME/.local/share/reicast/data

Files should be named

dc_boot.bin
dc_flash.bin

VMU Files

VMU files are located in $HOME/.local/share/reicast/

Enable Controller

Configure controllers via emu.cfg

if your system supports evdev up to 4 controller are supported otherwise reicast supports a single joystick controller, enable this in emu.cfg by setting device_id to the device id of your controller(s).

To confirm the device id of your controller run the following then press buttons on the controller confirm, ctrl-c to exit

cat /dev/input/js<num>

Video Mode

Configure emu.cfg [x11] section

Example Only:

fullscreen = 1
height = 1920
width = 1080

Remapping Keys

It is not currently evident how to remap keys

Known Keys

Start: Enter
B: C
A: V
UDLR (Analog): Arrows
(NOTE:check reicast site or source??)

Exit on ESC

Enable enable_x11_keyboard = 1 in emu.cfg. When enabled, the ESC key exits the emulator.

Troubleshooting

Errors when compiling from source

../../core/rend/soft/softrend.cpp:1167:77: error: invalid cast of an rvalue expression of type ‘__m128i {aka __vector(2) long long int}’ to type ‘__m128& {aka __vector(4) float&}’

Edit softrend.cpp line 1167 to match below

return (__m128)_mm_shuffle_epi8((__m128i&)v, _mm_set_epi8(R(0x80,2,1,0)));

NOTE: We deleted the first & that appears in the line. (who wants to use a software renderer anyway?)

External Links