Tried it and it crashes with any game. Is there also a proper info file?
I havenāt tested myself yet, but you probably have to make your own info file for now (could copy and edit the mednafen-saturn one).
I dunno what kind of bios it needs either. Same as the standalone I would expect.
Yeah, for the info file, I just copied/modified the saturn_mednafen one (remember to update the core info files from the RA updater in order for the change to actually take effect if you do it this way),
Though so far it doesnāt really matter anyway because I get the exact same results as petran791 -it just closes/crashes as soon as I try to load any game. Doesnāt matter the region or the format. The core does seem to load correctly on its own: it says ymir 0.3.0.
Iāll try to launch a game with --verbose. See if it says itās missing some file(s) maybe. Other than that, I would try as Awakened suggested to use the same bios as the stand alone. Maybe itās just expecting a different filenames as mednafen.
Hereās the debug info -everything below is from the moment the core is loaded then after the content/game tries to load. It does appear to accept the same bios as mednafen.
[libretro INFO] [Ymir] Loaded BIOS: sega_101.bin
[libretro INFO] [Ymir] CHD: Failed to open file: invalid data
[libretro INFO] [Ymir] BIN/CUE: [Line 1] CATALOG 0000000000000
[libretro INFO] [Ymir] BIN/CUE: Skipping CATALOG
[libretro INFO] [Ymir] BIN/CUE: [Line 2] FILE āAlien Trilogy (USA) (Track 01).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 01).bin - 126772 800 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 3] TRACK 01 MODE1/2352
[libretro INFO] [Ymir] BIN/CUE: Track 01 - MODE1/2352
[libretro INFO] [Ymir] BIN/CUE: [Line 4] INDEX 01 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 5] FILE āAlien Trilogy (USA) (Track 02).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 02).bin - 233553 60 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 6] TRACK 02 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 02 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 7] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 8] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 9] FILE āAlien Trilogy (USA) (Track 03).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 03).bin - 229390 56 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 10] TRACK 03 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 03 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 11] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 12] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 13] FILE āAlien Trilogy (USA) (Track 04).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 04).bin - 208787 04 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 14] TRACK 04 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 04 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 15] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 16] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 17] FILE āAlien Trilogy (USA) (Track 05).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 05).bin - 251569 92 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 18] TRACK 05 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 05 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 19] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 20] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 21] FILE āAlien Trilogy (USA) (Track 06).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 06).bin - 236564 16 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 22] TRACK 06 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 06 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 23] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 24] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 25] FILE āAlien Trilogy (USA) (Track 07).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 07).bin - 239715 84 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 26] TRACK 07 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 07 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 27] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 28] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 29] FILE āAlien Trilogy (USA) (Track 08).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 08).bin - 313380 48 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 30] TRACK 08 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 08 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 31] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 32] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 33] FILE āAlien Trilogy (USA) (Track 09).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 09).bin - 458804 64 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 34] TRACK 09 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 09 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 35] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 36] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 37] FILE āAlien Trilogy (USA) (Track 10).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 10).bin - 300938 40 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 38] TRACK 10 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 10 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 39] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 40] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 41] FILE āAlien Trilogy (USA) (Track 11).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 11).bin - 262812 48 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 42] TRACK 11 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 11 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 43] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 44] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 45] FILE āAlien Trilogy (USA) (Track 12).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 12).bin - 288261 12 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 46] TRACK 12 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 12 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 47] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 48] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 49] FILE āAlien Trilogy (USA) (Track 13).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 13).bin - 240797 76 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 50] TRACK 13 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 13 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 51] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 52] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: [Line 53] FILE āAlien Trilogy (USA) (Track 14).binā BINARY
[libretro INFO] [Ymir] BIN/CUE: File Alien Trilogy (USA) (Track 14).bin - 321636 00 bytes
[libretro INFO] [Ymir] BIN/CUE: [Line 54] TRACK 14 AUDIO
[libretro INFO] [Ymir] BIN/CUE: Track 14 - AUDIO
[libretro INFO] [Ymir] BIN/CUE: [Line 55] INDEX 00 00:00:00
[libretro INFO] [Ymir] BIN/CUE: Index 0 - 00:00:00
[libretro INFO] [Ymir] BIN/CUE: [Line 56] INDEX 01 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Index 1 - 00:02:00
[libretro INFO] [Ymir] BIN/CUE: Final FAD = 206524
debug | SMPC | Setting area code to 4
info | Media | Filesystem built successfully
[INFO] [Environ]: SET_MEMORY_MAPS.
[INFO] [Environ]: SET_SUPPORT_ACHIEVEMENTS: yes.
debug | SWRender-VDP1 | Enabling threaded VDP1 rendering
edit: testing a few more games: same results. Maybe the last line could be the problem:
debug | SWRender-VDP1 | Enabling threaded VDP1 rendering
If there are core options and if thereās an option to disable threaded VDP1 rendering it might be worth it to test while itās disabledā¦problem is: the way opt files works is whenever no .opt file is present a default .opt file is createdā¦only in this case the core seems to crash before that happens so thereās nothing that can be manually edited.
Well, I think I know why the warmenhoven ymir core crashes at start for me. Ymir requires at least win10. Says so in the github page.
Tried the standalone -there are two windows versions: AVX2 and SSE2 -they both crashes at start for me and in my experience any core thatās based on a standalone which require Win10 and up will also not work on previous Windows versions when ported to libretro.
It also crashes on Win11
Iād check if youāre able to run the standalone on Win11 first.
If the standalone works for you but the core doesnāt, then not much else can be done I guess.
edit: Also, if you run RetroArch from a command prompt, like so:
you will see some log information in the prompt window even after the crash. Mine says: Enabling Threaded VDP1 Rendering just before it crashes. Maybe see if you get the same error.
For anyone who wants to try: to launch a command prompt, just right click on the folder containing the RA executable while holding r-shift (havenāt tried on Win11 but Iām guessing it still works) then choose āopen window command menu hereā then in the prompt type
retroarch --verbose
In my case it progresses further but crashes right after the last line:
[INFO] [Core] Loading dynamic libretro core from: āi:\emulators\retroarch64\cores\ymir_libretro.dllā. [INFO] [Override] Redirecting save file to āi:\emulators\retroarch64\saves\Ymir\Darius Gaiden (USA).srmā. [INFO] [Override] Redirecting save state to āi:\emulators\retroarch64\states\Ymir\Darius Gaiden (USA).stateā. [INFO] [Environ] SET_SUPPORT_NO_GAME: no. [INFO] [Environ] SET_CORE_OPTIONS_V2. [INFO] [Environ] SET_CONTROLLER_INFO. [INFO] [Environ] SET_INPUT_DESCRIPTORS. [INFO] [Environ] SET_DISK_CONTROL_EXT_INTERFACE. [INFO] [Environ] GET_LOG_INTERFACE. [INFO] [Content] Content loading skipped. Implementation will load it on its own. [INFO] [Environ] GET_SYSTEM_DIRECTORY: āi:\emulators\retroarch64\systemā. [INFO] [Environ] GET_SAVE_DIRECTORY: āi:\emulators\retroarch64\saves\Ymirā. [INFO] [Environ] SET_PIXEL_FORMAT: XRGB8888. [libretro INFO] [Ymir] Loaded BIOS: sega_101.bin debug | SMPC | Setting area code to 4 info | Media | Filesystem built successfully [INFO] [Environ] SET_MEMORY_MAPS. [INFO] [Environ] SET_SUPPORT_ACHIEVEMENTS: yes. debug | SWRender-VDP1 | Enabling threaded VDP1 rendering debug | VDP2 | Enabling threaded VDP2 rendering [INFO] [SRAM] Skipping SRAM load. [INFO] [Core] Version of libretro API: 1, Compiled against API: 1 [INFO] [Core] Geometry: 320x224, Aspect: 1.333, FPS: 59.82, Sample rate: 44100.00 Hz. [INFO] [Video] Set video size to: fullscreen. [INFO] [Vulkan] Vulkan dynamic library loaded. [INFO] [Vulkan] Found GPU at index 0: āNVIDIA GeForce RTX 5060 Tiā. [INFO] [Vulkan] Using GPU index 0. [INFO] [Vulkan] Using GPU: āNVIDIA GeForce RTX 5060 Tiā. [INFO] [Vulkan] Queue family 0 supports 16 sub-queues. [INFO] [Vulkan] Got 2 swapchain images. [INFO] [Vulkan] Using resolution 3440x1440. [INFO] [Vulkan] Using BGRA8888 format. [INFO] [Vulkan] Loading stock shader. [INFO] [Input] Found joypad driver: ādinputā. [INFO] [Video] Found display server: āwin32ā. [INFO] [Audio] Set audio input rate to: 44100.00 Hz. [INFO] [WASAPI] Client initialized (shared, FLOAT, 48000Hz, 32.0ms). [INFO] [Audio] Started synchronous audio driver. [INFO] [Microphone] Initialized microphone driver. [INFO] [Display] Found display driver: āvulkanā. debug | SMPC | Processing RESDISA
Hm, look like it crashes further down the line than me but still before it had time to create an .opt file (which might have had an option to disable threaded rendering on vdp1 maybe).
Does Ymir has any advantages over Mednafen Saturn? Iām mostly interested about the input lag, i feel like most Saturn emulators are more laggy compared to emulators on other systems. I think Mednafen itself adds about 3 frames of lag. Playing the same games on a real Saturn feel more responsive, which is not as noticeable in other systems.
I canāt run the standalone (needs win10 or higher) or the core, but from what I read, itās much less demanding CPU wise, so you can run it on a weaker PC/device.
Iāve mentioned this before but as far as beetle/mednafen saturn or other Saturn emulators (I mostly use the beetle core, not mednafen standalone) being laggier, unless it can be shown objectively that it consistently adds about 3 frames of lags or more compared to real hardware, My guess is itās mostly perception.
i feel like most Saturn emulators are more laggy compared to emulators on other systems
Perhaps thatās where this perception comes from. Comparing the lag of emulated Saturn games to the ones on other (emulated) systems is like comparing apples to oranges in this case. Many Saturn games (not all) were known to lag noticeably on hardware.
Letās take Resident Evil on Saturn for example: Quick test anyone can do, just press left or right to make the character turn around and see how laggy it is on Saturn vs PSX. Well in this case, donāt even need a high speed camera itās like 6-8 frames laggier on Saturn, maybe even more. Itās extremely noticeable. That only shows that specific game is laggier than on PSX though, it doesnāt prove beetle/mednafen saturn and every other Saturn emulators except for Ymir adds 3-4 frames of lag.
If you take Galactic Attack/RayForce on Saturn played on the Beetle Saturn core itās almost next frame. Maybe 1 of lag. Two in the worse case scenario. But no way itās 5+ (1 or 2 + 3 additional) frames. That is near unplayable for a shmup, even 3 or 4 frames is kinda rough for shmups imo.
TL;dr
So, kinda skeptical that ymir is massively less laggy than other Saturn emus/cores (and 3 frames less would fit the definition of āmassiveā imo). For once, given there is plenty of cases where itās already at 1 or 2 on beetle sat, ymir would actually have negative lag at this point, But more seriously, it is possible that ymir does have less lag than other Saturn emus⦠itās also possible it has less lag than hardware if itās not as accurate. With N64 emulation this is actually easily achievable when using the GlideN64 renderer and disabling framebuffer emulation; you will get considerably less lag than even on hardware but obviously it doesnāt behave like on hardware at this point.
real tl;dr
I think a ymir core would be good ultimately but the beetle saturn core is extremely mature and solid and for now from what I read on ymir the compatibility of mednafen is still overall better.
Excited to hear a RetroArch Core is being Worked On
Where to download the Core File?
No Shock as mednafen been around lot longer then Ymir
The idea Mednafen Saturn adds lag comes from me comparing the emulator to a real Saturn.
I was even using a CRT monitor at the time, yet Duke Nukem 3D felt noticeably laggier than the console. I also have a N64 and other consoles and i didnāt notice such difference on their own emulators.
Also, in Sonic Jam, testing Sonic 1, the Saturn version reacts on the 5th frame on Mednafen while the Genesis version reacts on the 2nd frame with GenesisPlusGX. Does the real game has such a difference?
I also tested Galactic Attack and that also reacts on the 5th frame, meaning it has 4 frames of lag. I assume the real game has only 1, plus 3 because of the emulator.
I havenāt seen a single game on Mednafen that has less than 4 frames of lag, which is why i said Mednafen most likely adds 3 by itself.
Yabause is a buggy mess. But i did try Yabasanshiro and it gives me the exact same results, both games react on the 5th frame.
Ymir is the way to go for future saturn games (or mednafen). Yabause and all its branches are outdated. Ymir just needs something like pgxp and it would be perfect. Mednafen needs the same plus texture filtering
