Difference between pages "PlayStation 4 emulators" and "Sega Dreamcast emulators"

From Emulation General Wiki
(Difference between pages)
Jump to navigation Jump to search
(Added Spine, first public PS4 emu to play games)
 
 
Line 1: Line 1:
 
{{Infobox console
 
{{Infobox console
|title = PlayStation 4
+
|title = Sega Dreamcast
|logo = PS4.png
+
|logo = DreamcastConsole.png
|developer = [[:Sony]]
+
|developer = [[:Sega]]
|type = [[:Category:Consoles|Home video game console]]
+
|type = [[:Category:Home consoles|Home video game console]]
|generation = [[:Category:Eighth-generation_video_game_consoles|Eighth generation]]
+
|generation = [[:Category:Sixth-generation video game consoles|Sixth generation]]
|release = 2013
+
|release = 1998
|predecessor = [[PlayStation 3 emulators|PlayStation 3]]
+
|discontinued = 2001
|emulated = {{~}}
+
|predecessor = [[Sega_Saturn_emulators|Sega Saturn]]
 +
|emulated = {{}}
 
}}
 
}}
The '''PlayStation 4''' (PS4) is an eighth-generation console produced by Sony Computer Entertainment on November 15, 2013 and retailed for {{Inflation|USD|399.99|2013}}. It has a semi-custom 8-core AMD x86-64 Jaguar CPU at 1.6 GHz, whereas one of the cores is utilised separately only for low-power, background tasks. The CPU is shared on an APU chip with a semi-custom AMD GCN Radeon GPU. They are supported by 8 GB of GDDR5 RAM at 2.75 GHz, while 256 MB of DDR3 RAM is used only for background tasks. Notably, it is the first PlayStation console to use the [[wikipedia:x86|x86]] architecture, making it easier to program for than the [[PlayStation 3 emulators|PlayStation 3]] while also having the same architecture as PCs.
+
 
 +
The '''[[wikipedia:Sega Dreamcast|Dreamcast]]''' is a sixth-generation console released by [[wikipedia:Sega|Sega]] on November 27, 1998 in Japan and later on September 9, 1999 in NA. It retailed for {{Inflation|USD|199.99|1999}}. It had a Hitachi SH-4 RISC CPU at 200 MHz with 16 MB of RAM and 8 MB of VRAM. It had a PowerVR2 GPU at 100 MHz, which theoretically was capable of pushing 3 million polygons/second on-screen. There is a 2 MB audio RAM, which complemented a powerful 67 MHz Yamaha AICA sound processor, with a 32-bit ARM7 RISC CPU core. The audio chip could generate 64 voices with PCM or ADPCM codec and provided ten times the performance of the [[Sega Saturn emulators|Saturn's]] sound system.. Sega also released the '''[[Sega NAOMI and variants|Naomi]]''', an arcade system board with similar components to the Dreamcast. Sammy's '''[https://segaretro.org/Atomiswave Atomiswave]''' arcade board was also based on the Dreamcast and Naomi.
 +
 
 +
Sega collaborated with Microsoft on the Dreamcast's development, and this partnership would continue later with the [[Xbox emulators|Xbox]]. What came out of this was the possibility for games to be developed for an optimized version of '''Windows CE''' (with DirectX) on each disc. However, Windows CE wasn't mandatory to use and most developers opted for Sega's development tools instead out of convenience. Even in major emulators, this aspect isn't implemented (or implemented well).
  
 
==Emulators==
 
==Emulators==
{| class="wikitable" style="text-align:center;"
+
{| class="wikitable" style="text-align: center;"
 
! scope="col"|Name
 
! scope="col"|Name
! scope="col"|Operating System(s)
+
! scope="col"|Platform(s)
 
! scope="col"|Latest Version
 
! scope="col"|Latest Version
 +
! scope="col"|[[libretro|Libretro Core]]
 +
! scope="col"|Naomi
 +
! scope="col"|Atomiswave
 +
! scope="col"|Windows CE
 +
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 
! scope="col"|Active
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
|-
|[https://github.com/devofspine/spinedemo Spine]
+
! colspan="10"|PC / x86
|Linux
+
|-
|[https://github.com/devofspine/spinedemo/releases Git]
+
| [[DEmul]]
|{{✓}}
+
| align=left|{{Icon|Windows}}
|{{✗}}
+
| [http://demul.emulation64.com/downloads/ {{DEmulVer}}]
 +
| {{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✓}}
 +
|-
 +
| [[redream]]
 +
| align=left|{{Icon|Windows|Linux|macOS}}
 +
| [https://redream.io/download {{RedreamVer}}]
 +
| {{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}}
 +
|-
 +
| [[Flycast]]
 +
| align=left|{{Icon|Windows|Linux|macOS}}
 +
| [https://flyinghead.github.io/flycast-builds/ CI Builds]<br/>[https://flathub.org/apps/details/org.flycast.Flycast nightly]<small> (Flathub)</small>
 +
| {{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}
 +
|-
 +
| [http://flycast.dojo.ooo/ Flycast Dojo]
 +
| align=left|{{Icon|Windows|Linux|Fightcade}}
 +
| [https://github.com/blueminder/flycast-dojo/ git]
 +
| {{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}
 +
|-
 +
| [[reicast]]
 +
| align=left|{{Icon|Windows|Linux}}
 +
| [http://builds.reicast.com/ CI Builds]<small> (Not Working)</small><br/>[https://snapcraft.io/reicast r8.1]<small> (Snap Store)</small>
 +
| {{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
 +
|-
 +
| [[nullDC]]
 +
| align=left|{{Icon|Windows}}
 +
| [http://www.emucr.com/2013/03/nulldc-svn-r150.html 1.0.4 r150]
 +
| {{✗}} ||{{~}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
 +
|-
 +
| [[Makaron]]
 +
| align=left|{{Icon|Windows}}
 +
| [https://www.zophar.net/dreamcast/makaron.html T12/5]
 +
| {{✗}} ||{{✗}} ||{{✗}} ||{{~}} ||{{✗}} ||{{✗}} ||{{✗}}
 +
|-
 +
| [http://washemu.org/ WashingtonDC]
 +
| align=left|{{Icon|Linux}}
 +
| [https://github.com/washingtondc-emu/washingtondc git]
 +
| {{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
 +
|-
 +
| [http://www.lxdream.org Lxdream]
 +
| align=left|{{Icon|Linux|macOS}}
 +
| [http://www.lxdream.org/download.php 0.9.1]
 +
| {{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
 +
|-
 +
| [https://segaretro.org/Chankast Chankast]
 +
| align=left|{{Icon|Windows}}
 +
| [http://chanka.emulatronia.com/FrameSetDC_Down.htm 0.25]
 +
| {{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}
 +
|-
 +
| [[MAME]]
 +
| align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 +
| [http://www.mamedev.org/release.html {{MAMEVer}}]
 +
| {{✓}} ||{{~}} ||{{~}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}
 +
|-
 +
! colspan="10"|Mobile / ARM
 +
|-
 +
| [[redream]]
 +
| align=left|{{Icon|Android|LinuxARM}}
 +
| [https://play.google.com/store/apps/details?id=io.recompiled.redream 1.1.98]<small> (Android)</small><br/>[https://redream.io/download 1.5.0]<small> (Raspberry Pi)</small>
 +
| {{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}}
 +
|-
 +
| [[Flycast]]
 +
| align=left|{{Icon|Android|iOS}}
 +
| [https://flyinghead.github.io/flycast-builds CI Builds]
 +
| {{✓}} ||{{~}} ||{{~}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}
 +
|-
 +
| [[reicast]]
 +
| align=left|{{Icon|Android|Pyra}}
 +
| [https://play.google.com/store/apps/details?id=com.reicast.emulator r20.04]<small> (Android)</small></br>[https://pyra-handheld.com/repo/apps/122 Pyra Build]
 +
| {{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
 +
|-
 +
! colspan="10"|Console
 +
|-
 +
| [[Flycast]]
 +
| align=left|{{Icon|Switch}}
 +
| [https://flyinghead.github.io/flycast-builds CI Builds]
 +
| {{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}
 
|-
 
|-
|[[Orbital]]
+
| [[nullDC PSP]]
|Windows, Linux
+
| align=left|{{Icon|PSP}}
|[https://github.com/AlexAltea/orbital Git]
+
| [https://github.com/PSP-Archive/nulldce-psp git] [https://archive.org/details/nullDC-PSP 1.2.1]
|{{✓}}
+
| {{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{~}}
|{{✗}}
+
|-
 +
| nulldc-360
 +
| align=left|{{Icon|Xbox360}}
 +
| [https://github.com/gligli/nulldc-360 git]
 +
| {{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{~}} ||{{~}}
 
|}
 
|}
  
===Comparisons===
+
===Comparisons===
;Spine: First public PS4 emulator to play games (two at the moment)<ref name="spinegames">https://www.youtube.com/watch?v=2EFrUQ2J3D4</ref>. Spine is a High-Level emulator, it's Linux-only and closed-source for now<ref name="spinefoss">https://www.reddit.com/r/emulation/comments/byohyx/spinedemo_20190609/eqoruje</ref>. It uses a [[Wine]]-like approach. It's a dynamic linker for PS4 executables. Or from other perspective it's HLE without CPU emulation<ref name="spinewine">https://www.reddit.com/r/emulation/comments/byohyx/spinedemo_20190609/eqq310b</ref>.
+
;[[DEmul]]: Has the highest compatibility and accuracy, but it's Windows-only and closed-source. It supports Windows CE games, but in general, they run worse than standard Dreamcast titles. It's also more resource-intensive than other emulators.
;[[Orbital]]: Low-Level and open-source PS4 emulator. Can't boot any games yet.
+
;[[redream]]: Multi-platform and easy to use, but it's closed-source. Compatible with [https://redream.io/compatibility 90+% of the Dreamcast library] (Windows CE now supported), has a good user interface, is easy to set up, and can run without a BIOS. Runs on [https://youtu.be/rywLHa1i9yk?t=529 low-end machines] provided that they support OpenGL 3.1. There's a payware premium version that provides high-definition rendering and additional slots for save states.
 +
;[[nullDC]]:  Can run a lot of games at great speed on mid-end PC and it's open-source, however, it's no longer developed and the more recent forks have improved upon it.
 +
:;[[reicast]]: Eventually, nullDC's author forked his own project into reicast, with the main objective to widen platform availability to smartphones and tablets. While wider availability is generally a good thing, this resulted in cutting accuracy corners from the nullDC codebase to achieve the speed goals necessary to run on these platforms. Advancements in mobile hardware should have led to the removal of such "hacks"; however lack of developer resources and interest led to long delays in Reicast development, and the codebase remained virtually untouched for years before the RetroArch team began working with it as part of a "Reicast core", later named Flycast.
 +
:;[[flycast]]: Fork of reicast available as a standalone emulator and as a [[libretro]] core. Libretro collaborators, primarily [https://github.com/flyinghead/reicast-emulator flyinghead], dramatically improved Reicast in areas such as graphics, input, system clock, and Dreamcast VMU. Atomiswave and NAOMI SH-4-based arcade systems have also been added to great fanfare<ref name="flycastnaomi">https://github.com/libretro/flycast/issues/136</ref>, along with support for MAME's popular CHD format. Even full MMU support, which is needed to run WinCE-based games such as "Armada", "Half-Life" and "SEGA Rally Championship 2", has recently been tackled through an experimental branch (anyone following Dreamcast emulation over the years understands what a tough nut this is to crack). Aside from some audio stuttering issues in games such as "Looney Toons Space Race" and "Resident Evil: Code Veronica", this is a highly compatible and accurate emulator.
 +
 
 +
;[[Makaron]]: One of the only two closed-source Dreamcast emulators that can properly play Windows CE games.
 +
 
 +
==Emulation issues==
 +
For the emulators that are either mature or maturing, a very large percentage of games work well, but some games still have problems and glitches.
  
===Potential Roadblocks===
+
==VMU emulators==
Due to the PS4's x86 architecture and FreeBSD-based operating system, emulators for the device will by and large be very unconventional. Despite the x86's instruction set being '''huge'''<ref>{{cite web | url= https://en.wikipedia.org/wiki/x86_instruction_listings | title= x86 instruction listings | Wikipedia}}</ref>, a trait that would typically lead to years of development time by emulators, it opens the ability for pre-existing hypervisors to do the heavy lifting, eliminating the need for a recompiler. There is also, as of writing this, little to no documentation on the GPU (a modified Radeon 7970M with disabled stream processors) used in the PS4's APU, and it will require a complete re-implementation by emulator developers. End-users may wish to preform a preliminary dump of the required files from their PS4 using the [https://phi.nz/orbital/tools/dumper/ Orbital Dumper]
+
While some Dreamcast emulators can leverage the screen of the VMU while the game is running, none of them allow you to play the minigames developed for it. See the main page on VMU emulation [[Sega VMU emulators|here]].
 +
 
 +
==Downloads==
 +
* [[Emulator_Files#Dreamcast|BIOS]]
  
 
==References==
 
==References==
<references/>
+
<references />
 +
 
 +
{{Sega}}
  
 
[[Category:Consoles]]
 
[[Category:Consoles]]
[[Category:Very early emulation]]
+
[[Category:Home consoles]]
[[Category:Sony consoles]]
+
[[Category:Sega consoles]]
[[Category:Eighth-generation_video_game_consoles]]
+
[[Category:Sega Dreamcast emulators|*]]
[[Category:PlayStation 4 emulators]]
+
[[Category:Sixth-generation video game consoles]]

Revision as of 19:55, 15 November 2021

Sega Dreamcast
DreamcastConsole.png
Developer Sega
Type Home video game console
Generation Sixth generation
Release date 1998
Discontinued 2001
Predecessor Sega Saturn
Emulated

The Dreamcast is a sixth-generation console released by Sega on November 27, 1998 in Japan and later on September 9, 1999 in NA. It retailed for $199.99. It had a Hitachi SH-4 RISC CPU at 200 MHz with 16 MB of RAM and 8 MB of VRAM. It had a PowerVR2 GPU at 100 MHz, which theoretically was capable of pushing 3 million polygons/second on-screen. There is a 2 MB audio RAM, which complemented a powerful 67 MHz Yamaha AICA sound processor, with a 32-bit ARM7 RISC CPU core. The audio chip could generate 64 voices with PCM or ADPCM codec and provided ten times the performance of the Saturn's sound system.. Sega also released the Naomi, an arcade system board with similar components to the Dreamcast. Sammy's Atomiswave arcade board was also based on the Dreamcast and Naomi.

Sega collaborated with Microsoft on the Dreamcast's development, and this partnership would continue later with the Xbox. What came out of this was the possibility for games to be developed for an optimized version of Windows CE (with DirectX) on each disc. However, Windows CE wasn't mandatory to use and most developers opted for Sega's development tools instead out of convenience. Even in major emulators, this aspect isn't implemented (or implemented well).

Emulators

Name Platform(s) Latest Version Libretro Core Naomi Atomiswave Windows CE FLOSS Active Recommended
PC / x86
DEmul Windows 0.7 Build 280418
redream Windows Linux macOS 1.5.0 (Windows, macOS, Linux, Raspberry Pi)
1.2.07 (Android)
Flycast Windows Linux macOS CI Builds
nightly (Flathub)
Flycast Dojo Windows Linux git
reicast Windows Linux CI Builds (Not Working)
r8.1 (Snap Store)
nullDC Windows 1.0.4 r150 ~
Makaron Windows T12/5 ~
WashingtonDC Linux git
Lxdream Linux macOS 0.9.1
Chankast Windows 0.25
MAME Windows Linux macOS FreeBSD 0.264 ~ ~
Mobile / ARM
redream Android Linux ARM 1.1.98 (Android)
1.5.0 (Raspberry Pi)
Flycast Android iOS CI Builds ~ ~
reicast Android Dragonbox Pyra r20.04 (Android)
Pyra Build
Console
Flycast Switch CI Builds
nullDC PSP PSP git 1.2.1 ~
nulldc-360 Xbox 360 git ~ ~

Comparisons

DEmul
Has the highest compatibility and accuracy, but it's Windows-only and closed-source. It supports Windows CE games, but in general, they run worse than standard Dreamcast titles. It's also more resource-intensive than other emulators.
redream
Multi-platform and easy to use, but it's closed-source. Compatible with 90+% of the Dreamcast library (Windows CE now supported), has a good user interface, is easy to set up, and can run without a BIOS. Runs on low-end machines provided that they support OpenGL 3.1. There's a payware premium version that provides high-definition rendering and additional slots for save states.
nullDC
Can run a lot of games at great speed on mid-end PC and it's open-source, however, it's no longer developed and the more recent forks have improved upon it.
reicast
Eventually, nullDC's author forked his own project into reicast, with the main objective to widen platform availability to smartphones and tablets. While wider availability is generally a good thing, this resulted in cutting accuracy corners from the nullDC codebase to achieve the speed goals necessary to run on these platforms. Advancements in mobile hardware should have led to the removal of such "hacks"; however lack of developer resources and interest led to long delays in Reicast development, and the codebase remained virtually untouched for years before the RetroArch team began working with it as part of a "Reicast core", later named Flycast.
flycast
Fork of reicast available as a standalone emulator and as a libretro core. Libretro collaborators, primarily flyinghead, dramatically improved Reicast in areas such as graphics, input, system clock, and Dreamcast VMU. Atomiswave and NAOMI SH-4-based arcade systems have also been added to great fanfare[1], along with support for MAME's popular CHD format. Even full MMU support, which is needed to run WinCE-based games such as "Armada", "Half-Life" and "SEGA Rally Championship 2", has recently been tackled through an experimental branch (anyone following Dreamcast emulation over the years understands what a tough nut this is to crack). Aside from some audio stuttering issues in games such as "Looney Toons Space Race" and "Resident Evil: Code Veronica", this is a highly compatible and accurate emulator.
Makaron
One of the only two closed-source Dreamcast emulators that can properly play Windows CE games.

Emulation issues

For the emulators that are either mature or maturing, a very large percentage of games work well, but some games still have problems and glitches.

VMU emulators

While some Dreamcast emulators can leverage the screen of the VMU while the game is running, none of them allow you to play the minigames developed for it. See the main page on VMU emulation here.

Downloads

References

Dreamcast logo.png
Consoles: SG-1000Master SystemGenesis / Mega DriveCD32XPicoSaturnDreamcast
Handhelds: Game GearVMU / VMS
Arcade: System seriesModel 1Model 2Model 3NAOMI