Repository navigation
PSFlyCast v1.1.0
Flycast, the Dreamcast, NAOMI and Atomiswave emulator, as a native app for a jailbroken PS5, with a controller-only interface and the emulator's Vulkan renderer drawing through RADV.
PSFlyCast is a passion project, not a piracy project.
It exists so you can play the games you own on the console you own.
- Piracy is not condoned.
- No games, BIOS files, console firmware or decryption keys are included, and they never will be.
- Use only legally obtained backups of games you own, made yourself from your own discs.
- Use only BIOS files dumped from hardware you own.
- Requests for, or links to, games, BIOS files, firmware or keys are not welcome in this project's issues or discussions.
v1.0.2 and v1.1.0-rc1 offer this version under Settings > About > Check for updates.
Changes since v1.0.2
Added
- RetroAchievements. Settings > Achievements turns it on and signs in to your account on retroachievements.org with the console's keyboard; the password is sent to the site and not kept. An achievement earned shows over the game as it happens, and the quick menu lists the game's achievements. Softcore only: save states, cheats, rewind and fast forward stay as they are, and hardcore mode is not offered.
- Rewind (Settings > System, off by default, experimental). While it is on, the last three minutes of play are kept in memory, a moment every five seconds, and the quick menu's Rewind goes back to any of them. The memory cards go back with the game.
- A memory card manager (Settings > System > Memory cards, with no game loaded). It lists every card and its saves with their icons, copies a save to another card, deletes it, writes it to a file in the
vmufolder and adds one from a file there (.vmiwith.vms, or.dci). A card is kept as it was, as a.bakfile beside it, before its first change. - Favourites, hidden games and time played. A game's details have a new page, Manage: a favourite gets a star and a place on the Favourites shelf; a hidden game leaves every list (Settings > Library > Show hidden games brings them back, dimmed); and the page says how long the game was played and when last.
- Change cover, on the same page: the box art, the title screen or a moment of play from the covers' collection, the cover PSFlyCast finds by itself, or a picture of your own. Your own picture is never deleted.
- Fast forward in the quick menu, and as a control its Controls page can put on a button.
- Scanlines and CRT, two more choices of Settings > Video > Upscaling: the picture with a TV tube's lines, or with its lines, colour stripes, glow and darker corners.
- A software renderer (Settings > Video, or for one game; experimental): the processor draws each pixel with a software model of the Dreamcast's graphics chip, at 480p, for a game the graphics processor draws wrong. It is slower.
- Memory card screen (the memory card's little screen in a corner of the picture) and Stretch to fill in Settings > Video.
- Frame generation (Settings > Video, or for one game; experimental, off by default). A game that draws 30 pictures a second is shown each one twice on a 60 Hz TV and four times at 120 Hz; a 60 fps game twice at 120 Hz. With this on, repeats show pictures made in between instead: PSFlyCast works out how each part of the picture moved from the last frame to this one, and from this one back, and draws it part of the way. Light makes one picture between two of the game's. Full makes one for every repeat, which is three in between for a 30 fps game at 120 Hz. Where the motion is not found, that part of the picture is shown as the game drew it. A score or a map that stands still is left alone, and so is a cut to another scene. It is PSFlyCast's own work, in the source as
shell/ps5/ps5_framegen.cpp. - Four start-up animations, one each time PSFlyCast starts and never the same twice running: Birds (the one there was, made again to the new sound), Spin up, Comet and Sound line. Each shows the mark and the name in the middle of the screen and then takes them to the top left, where they are the top bar's. Settings > Interface > Start-up animation chooses Random, one of them by name, or Off.
- A new start-up sound, by Press5elect, which the animations are made to. A WAV file of your own named
sounds/startup.wavstill plays in its place, and is then the line that Sound line draws. - How fast the game really runs: Show frame rate now starts with a percentage, where 100% is full speed whatever the picture count says, then the pictures a second the game draws, the pictures shown, and how many of those were made by frame generation.
flycast-boot.loggets the same twenty seconds into a game, every five minutes and when the game ends, with the slowest ten seconds. - Per-pixel layers (Settings > Video, 8 to 128): how many see-through surfaces per-pixel sorting can order at one pixel. It was part of the Transparency sorting row, which now has its three choices alone: per-triangle, per-strip, per-pixel.
Fixed
- With USB drives on, the picture stayed at 60 Hz on a 120 Hz display. Outside its sandbox the driver could not find the title's own settings file, so it never asked for 119.88 Hz. PSFlyCast now tells it where the file is.
- The quick menu came back on the page it was left on. Closed with the touch pad from one of its pages (Cheats, Game options, Controls), it opened on that page again, with what the page had shown before. It now opens on its list every time, and a game option changed on the page is saved when the menu is closed that way too.
- Netplay of a Dreamcast game ended in "Peer verification failed". So did netplay of a game from a CDI, GDI or CUE image. The checksum the two players compare was taken of a memory address instead of the file, so it never matched. It is now the file's. Both players need the fix: against a copy of Flycast without it, on a PC for one, the check still fails.
- A game could go back to the BIOS in the middle of play because a status bit of the Dreamcast's processor that the game had set was never cleared, as it is on the console.
- A CHD image with over-long text in its track list could write past the memory set aside for it. The text is now cut to fit.
- The pointer jumped when a game changed between the two ways a mouse reports its movement.
- A trigger that reports as a button was not recognised when a control was given a button in the quick menu's Controls page.
- Damaged or crafted files and packets are checked before they are used: a disc's directory, a compressed save state, a name server's answer, an arcade game's file list, and the other player's input in netplay.
- From Flycast itself, in the 16 commits this version adds: a hazard in the per-pixel transparency renderer between one frame's render passes and the next, a save state with wrong lengths in it is refused instead of read, and packets from the other player in netplay and from DCNet are checked before they are used.
Changed
- The emulator is Flycast's
devbranch at4dca1988d; v1.0.2 hadf83fda706. Save states and memory cards made with v1.0.2 are read as before. - PSFlyCast is now built on the stack of PS5_VulkanTemplate: a newer RADV, a newer payload SDK, and a link step that refuses a build which calls a function the console does not have.
- The library that reads network shares, libsmb2, is its newest revision, with corrections to how it chains requests and to its text and encryption code.
- The updater knows release candidates. From this version on, a release is offered releases only; a candidate is offered the next candidate and then the release.
- Every web request PSFlyCast makes says what it comes from:
PSFlyCast/1.1.0 (PlayStation 5) Flycast/<its version>. flycast-boot.loghas lines startingstorage:, saying which folders the title can write to. They are for a later version, which may keep your files outside the title's folder. Nothing is moved yet.- The README and these notes open with the warning above.
Nothing was removed, and your settings, saves and games are kept when this version is installed over v1.0.2 or v1.1.0-rc1.
Changes since v1.1.0-rc1
Added since the candidate, each described above: frame generation, the four start-up animations and the new start-up sound, how fast the game really runs in Show frame rate, and Per-pixel layers as a row of its own. Everything else is as it was in the candidate, with the same revisions of the emulator, the driver and the libraries.
Tested for this release
This release is build 47. It is build 46 with its name and number changed: a second candidate that I ran on my console and did not publish. Build 47 itself has not been run on a console.
Confirmed on my console, on the builds that led to it:
- on build 46: the start-up animations start as they should; Per-pixel layers; and frame generation as it is now, with which fast games smear little enough to be acceptable and the delay it adds is not noticeable;
- on a test build before it (build 45), on a 3840x2160 display at 119.88 Hz: PSFlyCast starts and plays the new start-up sound; and with frame generation as it was then, three games played for two to seven minutes each ran at 99% to 100% of full speed: two that draw about 30 pictures a second, with 76 to 81 more a second made in between, and one that draws 60, with 60 made. The slowest ten seconds were 89%, 94% and 98%. No cut to another scene showed a wrong picture;
- on the first candidate (build 44): v1.0.2's Check for updates found it, downloaded it and put it in place, and Restart PSFlyCast now started the new version;
- on build 42: PSFlyCast as built on the new stack starts, shows its library and runs games as v1.0.2 did, with the saves, states and settings v1.0.2 left; the memory card manager; favourites, hidden games and time played; Change cover; the Scanlines and CRT filters; the software renderer; a USB keyboard and mouse as the Dreamcast's; the left stick as the joystick in arcade games.
Not confirmed on a console:
- the speed of frame generation as it is now: it does about twice the work of build 45's on the build machine's driver, and no speed was written down on build 46;
- this version installed from Check for updates;
- achievements: signing in, an achievement earned in a game, the quick menu's list;
- rewind;
- fast forward;
- the memory card's screen and Stretch to fill;
- 119.88 Hz output with USB drives on;
- what the first candidate added to build 42, netplay between two fixed copies among it;
- from earlier versions: the Dreamcast's language taken from the console's; variable refresh rate; a second, third and fourth player; the games' own online modes; per-pixel transparency above 4x internal resolution; USB drives.
On the build machine: frame generation's own file in a test on a software Vulkan driver, with the validation layer on, which had nothing to say. On test pictures whose true in-between picture is known, the made picture is 32 dB from the true one for a pan with something crossing it (a plain mix of the two frames is 18.5 dB, and build 45's was 27 dB) and 33 dB for a turn with a zoom (build 45: 27.6 dB). For a fast turn behind something held still in front, and for a ground rushing at the camera, the numbers are close to build 45's (23 dB and 24 dB; 21 dB and 18 dB when faster still), with the parts that cannot be followed shown as the game drew them where build 45 mixed them. A score standing still over six frames is left as it is, three cuts to another scene give the new scene's picture whole, and Light and Full were run with two, three and four presents and two picture shapes. Also: every new screen rendered from the real code, and what the first candidate's notes list.
Apart from the speed lines above, which are from one console, three games and an earlier build of frame generation, this release makes no speed claim.
Known issues
- With USB drives on, PSFlyCast runs outside its sandbox, where the console can refuse it HTTPS: the update check, cover downloads and achievements may fail. Turn USB drives off and start PSFlyCast again for those.
- Rewind takes a snapshot of the whole machine every five seconds of play, which can show as a short hitch. It is off in netplay, in a game's own online mode and between linked arcade boards. What a game saved to its memory card after the moment gone back to is undone with it.
- The software renderer draws at 480p whatever the internal resolution is, without widescreen, and not for NAOMI 2 games or in netplay, where the graphics processor draws as before.
- Fast forward is held to the display: about twice a 60 fps game's speed with 120 Hz output, and no faster than normal at 60 Hz, where it only turns the sound off.
- Achievements need the console online when PSFlyCast starts; a saved sign-in that could not be used is shown as not signed in, and signing in again mends it. Should the console not open its password keyboard, the plain one opens and a notice says that the password shows as it is typed.
- While an update is downloading, other web requests (covers, achievements) wait for it.
- Restart PSFlyCast now, after an update, may only close PSFlyCast; open it again from the home screen. The new version is in place either way.
- With touch-pad aiming, a click of the touch pad still opens the quick menu: touch it lightly.
- A USB keyboard or mouse has to be connected, and listed in Settings > Controls > Controllers, when a game starts. They do not drive the menus.
- Frame generation cannot follow everything. What moves too fast, the edge of the picture in a quick turn and what comes out from behind something are shown as the game drew them, so those parts move no more smoothly than without, and the line between them and the made parts can show. Where a wrong motion is taken for a right one it shows as a smear. The controls feel later by half a game frame (three quarters with Full for a 30 fps game at 120 Hz). It does nothing for a 60 fps game at 60 Hz, with Variable refresh rate on, or while fast forward is held, and it is heavier at high internal resolutions: watch the speed with Show frame rate.
- While Netplay is not Off, every game waits for another player when it starts. A Dreamcast game, or one from a CDI, GDI or CUE image, can only be played against another copy that has this version's fix.
Carried over from earlier versions, not checked again:
- With per-triangle transparency sorting some games show surfaces flickering in and out, depending on where you stand. Per-pixel draws them right: set it in that game's options, with 3x or 4x internal resolution and FSR 1.
- The highest internal resolutions are heavy, most of all with per-pixel transparency. If a game slows down, stays black or loses its HUD, go lower.
- The first time a game shows a new effect, or FSR 1 or a picture filter is first used, there is a short hitch while a shader is compiled.
- Too large an object draw distance can slow a game or break it; start with 2x.
- No game patches (60 FPS, widescreen) are included: the community chart they come from states no licence. The README says how to make your own list.
Install or update
- From v1.0.2 or v1.1.0-rc1: Settings > About > Check for updates offers this version, downloads it and puts it in place. Your games, saves, settings and covers are not touched.
- By hand, or from v1.0.1 and earlier: copy the complete
PPSA99247folder from the ZIP to/data/homebrew/PPSA99247/on the console, over the folder that is there. Your games, saves, settings and covers are inside it, so do not delete it first. - Wait for ShadowMountPlus (or the launcher you use for titles in
/data/homebrew/) to report the title ready, then start PSFlyCast. - Put your own legally obtained backups in
games/, and BIOS files dumped from your own console inbios/(optional for Dreamcast games). None are included, and none ever will be. - Read
LEGAL.txt,README.mdandMANUAL.mdin the folder.
Reporting problems
Send flycast-boot.log and flycast-boot.1.log from the title's folder, and say which build it is (Settings > About, or the log's first lines). Copy the logs before starting the title again. Never attach game files, BIOS files, firmware or keys.
Source
This ZIP was built from PSFlyCast commit 1cc6b2978d891f93cd2e36123ba4fd14118bd444, which is this release's tag. The source of every part in the ZIP is attached to this release; SOURCES.txt says what each archive is and SHA256SUMS has their digests. Some of them are in parts, each an archive of its own: unpack a part's siblings into the same folder. licenses/README.txt in the title's folder lists every part with its licence. PSFlyCast as a whole is distributed under the GPL, version 3, with no warranty.
Build
Build identity: PSFlyCast v1.1.0, build 47, built 2026-10-07
| Component | Version |
|---|---|
| PSFlyCast | 1cc6b2978d891f93cd2e36123ba4fd14118bd444 (tag v1.1.0) |
| Flycast | upstream dev 4dca1988dab56f603c2309e8882e264252fa7c8f |
| RADV (PS5_Mesa) | 7b59ef27c1b09b9671bc4153c41940c3155c3af2 plus shell/ps5/mesa/ (eac740a389da49fd3e424c4e6bfb75f48f3d1933 of the build's checkout) |
| PS5_Vulkan | 5b5e4fc2d80fdb67a4f61ba9e6a8a424026bb8a5 with the Mesa revision above (639fc02bcc46d399b9b6f9669c4b3eeb783c000a of the build's checkout) |
| PS5_PayloadSDK | b5efad528e0ac1b8289f39d72a0e890ff68ff0a6 (title), b83202be73e930050e00de0f1b4d9ec46c0391bf (RADV's archive) |
| PS5_VulkanTemplate (the stack's set-up) | b577e950684e8bb835746ad0e38495ebcb154fd0 (v1.000.000) |
| REFSW (the software renderer) | from nullDC-rust 6b76ff00ebd7bdab06ac864612839708f595c714 |
| rcheevos (achievements) | 11.6.0, as Flycast carries it |
| libsmb2 | 7e4ff97cf00edb288b6b763888e4326842afdc76 |
| FidelityFX FSR 1 | a21ffb8f6c13233ba336352bdff293894c706575 (v1.0.2) |
| Basis Universal (transcoder) | 9bebe16726b3a61c8c213eeee3b7cffb462ef34e |
| libretro-database (cheat files) | d5bae90b22018ce3c9c5a8eff4141a4768c8dd5f |
SHA-256 of PSFlyCast-v1.1.0.zip: bb3a4798350e1fd3d0cc03218fbe97469bfde09e4d6636af114510d1484c60a0
SHA-256 of eboot.bin: 1999f56b93cdf27fedd27642fccb3c1a17877da19402288cf913146ad71b5bc9
PSFlyCast is an unofficial port. It is not affiliated with or endorsed by Sony Interactive Entertainment, Sega, AMD, RetroAchievements or the Flycast project. "PlayStation" and "PS5" are trademarks of Sony Interactive Entertainment; "Dreamcast" is a trademark of Sega. Vulkan is a registered trademark of the Khronos Group, and the RADV port in this title is not a conformant product.
