Flycast: Difference between revisions

From Emulation General Wiki
Jump to navigation Jump to search
Ilyagredasov (talk | contribs)
No edit summary
Tags: Mobile edit Mobile web edit
Ilyagredasov (talk | contribs)
Broken
Tags: Mobile edit Mobile web edit
Line 9: Line 9:
|target = [[Sega Dreamcast emulators|Dreamcast]] <small>(incl. [[Sega_Dreamcast_emulators#Hardware_features_and_peripherals|Windows CE]])</small><br/>[[Sega_NAOMI_and_variants|NAOMI<br/>NAOMI 2<br/>GD-Rom models<br/>Atomiswave<br/>System SP]]
|target = [[Sega Dreamcast emulators|Dreamcast]] <small>(incl. [[Sega_Dreamcast_emulators#Hardware_features_and_peripherals|Windows CE]])</small><br/>[[Sega_NAOMI_and_variants|NAOMI<br/>NAOMI 2<br/>GD-Rom models<br/>Atomiswave<br/>System SP]]
|developer = flyinghead
|developer = flyinghead
|compatibility = [https://flyinghead.github.io/flycast-builds/test-results.html?hash=464defe compatibility list]
|compatibility =  
|website = [https://flyinghead.github.io/flycast-builds Site]
|website = [https://flyinghead.github.io/flycast-builds Site]
|prog-lang = {{Proglang|C++}}, {{Proglang|C}}
|prog-lang = {{Proglang|C++}}, {{Proglang|C}}

Revision as of 19:40, 8 February 2026

flycast
Developer(s) flyinghead
Latest version 2.7 [+]
Active Yes
Platform(s) Windows
Linux
macOS
Raspberry Pi
Android
iOS (officially discontinued, can be compiled by user)
Nintendo Switch
Xbox One
Xbox Series X and Series S
PS Vita
webOS
Emulates Dreamcast (incl. Windows CE)
NAOMI
NAOMI 2
GD-Rom models
Atomiswave
System SP
Website Site
Support ($) PayPal
Buy Me A Coffee
Programmed in C++, C
License GPLv2
Source code GitHub
Issue tracker GitHub

Flycast is a free and open-source Dreamcast emulator currently available for Windows, Linux, macOS, Android and Nintendo Switch. Also in the works is the PS Vita release. Flycast was previously available for iOS but the developer (flyinghead) dropped its support and removed the builds from the builds' repository, citing persistent abusive behaviour (including death threats) towards him by an iOS user from several IP addresses. The last version released for iOS has been archived (the IPA is d9ec0cb 2025-06-01T09:02:57.000Z). A tech-savvy user nevertheless may compile future versions' iOS builds themselves since the code is still there, it's just that the automatic build builder won't do it automatically (or alternatively use Manic EMU since its Dreamcast core is a port of Flycast).

Similarly, an advanced user can compile flycast builds for Windows on ARM and Raspberry Pi since the official build builder doesn't offer official builds for these platforms, at least for now.

It's a fork of reicast - another Dreamcast emulator for Windows, Linux and Android. It has a work-in-progress wiki available here, complete with guides and information about various features.

Downloads

Windows macOS Android Switch Xbox One Xbox Series X/S CI Builds

Linux Flatpak nightly binary
via Flathub

Overview

Flycast requires a GPU that supports OpenGL 3.0 or OpenGL ES 2.0. A Dreamcast BIOS file is optional, but NAOMI, NAOMI 2 and Atomiswave BIOS files are required. It has support for almost all Dreamcast (incl. Windows CE), NAOMI, NAOMI 2, NAOMI/NAOMI2 GD-ROM, Sega System SP, Atomiswave games. It also has support for the following features:

  • Emulating standard Dreamcast controllers, Keyboard, Mouse, Light-Gun (with your mouse), Twin Sticks, and even the ASCII Mission Stick
  • Emulating two expansion sockets per controller (VMU, Purupuru/Rumble Pack, or Microphone)
  • DCNet
  • Connectivity to DreamPotato VMU emulator
  • Widescreen (Rendering outside of screen)
  • Resolution and Texture Upscaling
  • Frame Skipping
  • Dump textures and load custom textures
  • Support for HLE BIOS (note that it's recommended to use a real BIOS)
  • High compatibility and high performance
  • Widescreen Game Hack (Auto-applying codes/patches to certain games to do Widescreen instead of using the hack)
  • Compatible with NAOMI games that use analog sticks (Monkey Ball, Gun Survivor 2) and trackball (Outtrigger)
  • VMU Support for compatible NAOMI games (Street Fighter Zero 3 Upper, Virtual-On, F355 Twin and 2, etc)
  • flycast's NAOMI arcade Compatibility list
  • SH4 under/overclock option
  • 32 MB RAM option
  • Emulation of Printers (F355 Deluxe variants, Touch de Uno)
  • Card emulation (VF4, Initial D, Club Kart 2001, Mushiking)

Netplay

  • Networked Dreamcast & NAOMI games are supported natively with Dreamcast Live configured by default for supported games.
  • Local multiplayer netplay support available in the Flycast Dojo fork. Peer-to-peer, delay-based and rollback netcode with spectating available. 2 Players only. Featured as a part of Fightcade.
  • For Mobile Suit Gundam: Federation vs. Zeon & DX, a custom fork of Flycast and private game server is maintained here.

Libretro core

Two reicast cores on libretro called reicast OIT and reicast regular were introduced in June 2018 that replace the original core. These cores backport changes from flyinghead's fork that rework the rendering system. The regular core is compliant with OpenGL 3 and GLSL 1.30 in order to support mobile devices and mid-tier PCs. The OIT core supports a graphics feature of the Dreamcast called Order-Independent Transparency that can only be properly emulated using OpenGL 4.3 and later, so it's only available for Windows and Linux at the moment. The two reicast cores have been merged in one reicast libretro core in October 2018. In 2019 the core was first renamed to Beetle DC and a short while later Flycast, for licensing reasons.

Availability of versions

  • Windows, macOS (Intel and ARM) and Linux (64-bit).
  • Mobile devices (Android and iOS).
  • Nintendo Switch.
  • Xbox One, Xbox Series X and S

Supported GPU features

  • Tile clipping support
  • Fogging support
  • Volume modifier shadow support
  • Multipass rendering (enabled by default for non-OIT)
  • Render to texture buffer
  • Log 2 depth buffer
  • Order independent transparency (OIT only)
  • Two-volume mode support (OIT only)
  • Accumulation Pixel Buffer Size core option (OIT only. Can be set to 512MB, 1GB or 2GB, depending on how much VRAM your video card has. May help with correct output at higher resolutions.)
  • 64-bit dynarec (Fixes Shenmue 1/2, Marvel vs. Capcom 2 and Heavy Metal Geomatrix)
  • Flat shading and bump-mapping
  • Trilinear filtering ( Video)
  • Improved palette/YUV texture quality (Converts to 32-bit colors instead of RGB565; i.e. lossless quality of background textures in Alone in the Dark: The New Nightmare and is equal to DEmul and redream.)
  • Display VMU screens in-game (Positioning, opacity levels and sizing available. Can also show all 4 attached VMU screens at once.)
  • Extra Depth Scaling (Fixes graphics in Samurai Shodown VI (NAOMI).)

Misc features and enhancements

Main article: Dreamcast emulators#Enhancements

Raspberry Pi compilation

Raspberry Pi uses 16KB memory pages instead of the usual 4KB on most Linux platforms, so it needs to be recompiled locally. First, install the required packages:

sudo apt install git libao-dev libasound2-dev libevdev-dev libgl1-mesa-dev liblua5.3-dev libminiupnpc-dev libpulse-dev libsdl2-dev libudev-dev libzip-dev cmake libcurl4-openssl-dev libaudio-dev libjack-dev libsndio-dev libsamplerate0-dev libx11-dev libxext-dev libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev libxkbcommon-dev libdrm-dev libgbm-dev libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev fcitx-libs-dev

Note: The code above has been provided by flyinghead himself but it may be obsolete, relevant external dependencies should be tracked here.

Second, clone and build:

git clone --recursive https://github.com/flyinghead/flycast.git cd flycast cmake -B build -DCMAKE_BUILD_TYPE=Release cmake --build build --config Release

Windows on ARM compilation

git clone --recursive https://github.com/flyinghead/flycast.git cd flycast cmake -B build -DCMAKE_BUILD_TYPE=Release -A ARM64 cmake --build build --config Release

iOS compilation

In terminal, clone git clone https://github.com/flyinghead/flycast.git cd flycast

Install relevant libraries: brew install cmake followed by list of relevant libraries (sdl2, libzip, etc.).

Navigate to cd platform/ios and configure cmake -B build -G Xcode

All the libraries must be installed in order to avoid a compilation failure.

Open flycast.xcodeproj inside the build folder. In the top bar of Xcode, select "flycast" as the scheme next to the run button, then select your connected iOS device or "Any iOS Device" as the build target, then click Product > Build or press Command + B to build it.

Don't forget about signing the build/running it unsigned (instructions are easy to find online).