Flycast: Difference between revisions

Ilyagredasov (talk | contribs)
Tags: Mobile edit Mobile web edit
Ilyagredasov (talk | contribs)
Tags: Mobile edit Mobile web edit Advanced mobile edit
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{lowercase title}}
{{lowercase title}}
{{Infobox emulator
{{Infobox emulator
|title = Flycast
|title = flycast
|logo = Flycast.png
|logo = Flycast.png
|logowidth = 130
|logowidth = 130
Line 7: Line 7:
|active = Yes
|active = Yes
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Raspberry Pi|Raspberry Pi]]<br/>[[Emulators on Android|Android]]<br/>[[Emulators on iOS|iOS]] <small>(officially discontinued, can be compiled by user)</small><br/>[[Emulators on Switch|Nintendo Switch]]<br/>[[Emulators on Xbox One|Xbox One]]<br/>[[Xbox Series X and Series S]]<br/>[[Emulators on PS Vita|PS Vita]]<br/>[[Emulators on webOS|webOS]]
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Raspberry Pi|Raspberry Pi]]<br/>[[Emulators on Android|Android]]<br/>[[Emulators on iOS|iOS]] <small>(officially discontinued, can be compiled by user)</small><br/>[[Emulators on Switch|Nintendo Switch]]<br/>[[Emulators on Xbox One|Xbox One]]<br/>[[Xbox Series X and Series S]]<br/>[[Emulators on PS Vita|PS Vita]]<br/>[[Emulators on webOS|webOS]]
|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}}
|source = [https://github.com/flyinghead/flycast GitHub]
|source = [https://github.com/flyinghead/flycast GitHub]
|issuetracker = [https://github.com/flyinghead/flycast/issues GitHub]
|support = [https://www.paypal.com/paypalme/FlycastEmu PayPal]<br/>[https://buymeacoffee.com/hhwtpernwq Buy Me A Coffee]
|support = [https://www.paypal.com/paypalme/FlycastEmu PayPal]<br/>[https://buymeacoffee.com/hhwtpernwq Buy Me A Coffee]
|license = {{license|GPLv2}}
|license = {{license|GPLv2}}
}}
}}


'''Flycast''' is a free and open-source [[Sega Dreamcast emulators|Dreamcast emulator]] currently available for [[Emulators on Windows|Windows]], Linux, [[Emulators on macOS|macOS]], [[Emulators on Android|Android]] and [[Emulators on Switch|Nintendo Switch]]. Also in the works is the [https://github.com/flyinghead/flycast/pull/1440 PS Vita release]. Flycast was previously available for [[Emulators on iOS|iOS]] but the developer (flyinghead) dropped its support and removed the builds from the builds' repository, [https://www.androidauthority.com/flycast-dreamcast-emulator-ios-pulled-3565019/ citing persistent abusive behaviour (including death threats) towards him by an iOS user from several IP addresses]. The last version released for iOS [https://drive.google.com/file/d/1UKucFA0JX3zfyR5EsrnoYdZNoOSa_Un-/view?usp=drivesdk has been archived] (the IPA is [https://drive.google.com/file/d/1WdXRg8qbUuWbKuZBsB4ghaVMxhNRSJ_T/view d9ec0cb 2025-06-01T09:02:57.000Z]). A tech-savvy user nevertheless [[#iOS compilation|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).
'''Flycast''' is a free and open-source [[Sega Dreamcast emulators|Dreamcast emulator]] currently available for [[Emulators on Windows|Windows]], Linux, [[Emulators on macOS|macOS]], [[Emulators on Android|Android]], and [[Emulators on Switch|Nintendo Switch]]. Also in the works is the [https://github.com/flyinghead/flycast/pull/1440 PS Vita release]. Flycast was previously available for [[Emulators on iOS|iOS]] but the developer (flyinghead) dropped its support and removed the builds from the builds' repository, [https://www.androidauthority.com/flycast-dreamcast-emulator-ios-pulled-3565019/ citing persistent abusive behaviour (including death threats) towards him by an iOS user from several IP addresses]. The last version released for iOS [https://drive.google.com/file/d/1UKucFA0JX3zfyR5EsrnoYdZNoOSa_Un-/view?usp=drivesdk has been archived] (the IPA is [https://drive.google.com/file/d/1WdXRg8qbUuWbKuZBsB4ghaVMxhNRSJ_T/view d9ec0cb 2025-06-01T09:02:57.000Z]). A tech-savvy user nevertheless [[#iOS compilation|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 compilation|Windows on ARM]] and [[#Raspberry Pi compilation|Raspberry Pi]] since the official build builder doesn't offer official builds for these platforms, at least for now.
Similarly, an advanced user can compile flycast builds for [[#Windows on ARM compilation|Windows on ARM]] and [[#Raspberry Pi compilation|Raspberry Pi]] since the official build builder doesn't offer official builds for these platforms, at least for now.
Line 26: Line 27:
{| cellpadding="4"
{| cellpadding="4"
|-
|-
|align=center|{{Icon|Win|Mac|APK|Switch}} {{Icon|XB1|SXS}}
|align=center|{{Icon|Win|Mac|APK|Switch|XB1|SXS}}
|'''[https://flyinghead.github.io/flycast-builds CI Builds]'''<br>
|'''[https://flyinghead.github.io/flycast-builds CI Builds]'''<br>
|-
|-
Line 33: Line 34:
|align=center|{{Icon|Linux-big}}
|align=center|{{Icon|Linux-big}}
|'''[https://flathub.org/apps/details/org.flycast.Flycast Flatpak nightly binary]<br/><small>via [https://flathub.org Flathub]</small>'''
|'''[https://flathub.org/apps/details/org.flycast.Flycast Flatpak nightly binary]<br/><small>via [https://flathub.org Flathub]</small>'''
|-
|colspan=2|<hr/>
|-
|align=center|{{Icon|Web}}
|[https://github.com/nasomers/flycast-wasm Unofficial core] for [[EmulatorJS]]
|-
|align=center|{{Icon|FreeBSD}}
|[https://www.freshports.org/emulators/flycast/ Unofficial port] for [[FreeBSD]]
|-
|align=center|{{Icon|PSVita}}
|[https://www.gamebrew.org/wiki/Flycast_Vita Unofficial Vita port]<br/><small>To be obsoleted by the official Vita port</small>
|-
|align=center|{{Icon|Xbox}}
|[https://github.com/Team-Resurgent/Flycast-X/ Unofficial Xbox port]
|}
|}


Line 40: Line 55:
*Emulating standard Dreamcast controllers, Keyboard, Mouse, Light-Gun (with your mouse), Twin Sticks, and even the ASCII Mission Stick
*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)
*Emulating two expansion sockets per controller (VMU, Purupuru/Rumble Pack, or Microphone)
*[[DCNet]]
*Connectivity to [[DreamPotato]] VMU emulator
*Connectivity to [[DreamPotato]] VMU emulator
*Widescreen (Rendering outside of screen)
*Widescreen (Rendering outside of screen)
Line 63: Line 79:
==Libretro core==
==Libretro core==
Two reicast cores on [[libretro]] called '''reicast OIT''' and '''reicast regular''' were introduced [https://www.libretro.com/index.php/introducing-reicast-oit-libretro-core-updated-reicast-regular-core/ in June 2018] that replace the original core. These cores backport changes from [https://github.com/flyinghead/reicast-emulator 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.
Two reicast cores on [[libretro]] called '''reicast OIT''' and '''reicast regular''' were introduced [https://www.libretro.com/index.php/introducing-reicast-oit-libretro-core-updated-reicast-regular-core/ in June 2018] that replace the original core. These cores backport changes from [https://github.com/flyinghead/reicast-emulator 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 [https://www.libretro.com/index.php/reicast-libretro-and-reicast-oit-libretro-merged-into-one-what-you-need-to-know/ in October 2018]. In 2019 the core was first renamed to '''Beetle DC''' and a short while later '''Flycast''', for licensing reasons.
The two reicast cores have been merged in one '''reicast libretro''' core [https://www.libretro.com/index.php/reicast-libretro-and-reicast-oit-libretro-merged-into-one-what-you-need-to-know/ 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===
===Availability of versions===
Line 120: Line 136:
cd flycast</code>
cd flycast</code>


Install libraries: <code>brew install cmake libzip libpng freetype sdl2</code>
Install relevant libraries: <code>brew install cmake</code> followed by list of relevant libraries (sdl2, libzip, etc.).


Navigate to <code>cd platform/ios</code> and configure <code>cmake -B build -G Xcode</code>
Navigate to <code>cd platform/ios</code> and configure <code>cmake -B build -G Xcode</code>
Line 150: Line 166:
[[Category:Xbox Series X/S emulation software]]
[[Category:Xbox Series X/S emulation software]]
[[Category:Forks]]
[[Category:Forks]]
[[Category:Custom assets]]
[[Category:Active emulation software]]
[[Category:Active emulation software]]