r/emulation

▲ 16 r/emulation+1 crossposts

Why does ReXGlue get so much hate in the recompilation community?

I feel like there's a lot of misunderstanding around ReXGlue, and sometimes people seem to associate it directly with bad ports or poor performance.

ReXGlue is a tool/framework used in the recompilation process. The final quality still depends heavily on how the developer implements, optimizes, and maintains the project.

If a project has poor performance, missing shaders, bugs, or other issues, I don't think it's fair to automatically blame ReXGlue without looking at the actual implementation.

I'm using ReXGlue in my own recompilation, and I've been able to optimize and improve the project considerably as development continues. That experience is part of why I'm curious about the community's opinion.

reddit.com
u/Faisal_alwaal — 10 days ago
▲ 109 r/emulation

ScratchPsx is a PS1 emulator for MS-DOS, from the 486 to the Pentium II or more

Info/screenshots + download: https://www.vogons.org/viewtopic.php?t=112722

In this video, it runs under DOSBox-X: first with the software renderer, then with hardware rendering on an emulated 3dfx Voodoo (Glide) https://youtu.be/KK65ccNZhUY

Features:

  • MIPS R3000 dynamic recompiler to x86
  • VGA 320x200, mode X 320x240, VESA 640x480 (65536 colors)
  • 3dfx Glide renderer: Voodoo 1 and Voodoo 2 (SLI)
  • Sound Blaster 2.0 / Pro / 16, CD audio and XA
  • Menus drawn over the game, in homage to Genecyst
vogons.org
u/NXGZ — 10 days ago

Prospero Win v0.1.0 - homebrew app that runs Windows games directly on a PS5

The first ready-made release of prospero win: https://github.com/mpereiraesaa/prospero-win/releases/tag/v0.1.0

###What prospero win is:

Runs Windows games directly on a PlayStation 5. It carries its own copy of Wine, so there is no PC streaming involved: the game runs on the console.

  • 64-bit Windows programs run natively on the PS5's x86-64 CPU. 32-bit games run through prospero-win's own x86 translator.
  • Direct3D 8, 9, 10 and 11 games draw through DXVK and Vulkan. Older OpenGL games are supported too, and so are 2D games and Windows programs that draw with GDI.
  • You can play with the DualSense (Xbox-style XInput, analog sticks, triggers and rumble, plus custom mappings for keyboard-and-mouse games) or with a USB keyboard and mouse.
  • Game audio comes out of the PS5's own audio output.
  • A launcher lists your games. Each game has a profile with its graphics and control settings.
  • It's experimental. Some games work well, and many haven't been tried yet.
github.com
u/NXGZ — 10 days ago

Is there a similar feature to Dolphin's "ubershaders" in other emulators?

The thing I can't stand about emulation is the shader compilation stutter. I can handle low resolution/fps, but if the game stutters like crazy for the first hours I simply turn it off. Ubershaders in Dolphin is a godsend and is one of the best technologies I've ever known. If there's a similar function in other emulators I'd be beyond happy. I'm not really up-to-date with emulators these days, so can someone chime in and tell me what stutter prevention features there are nowadays?

reddit.com
u/Ivaylo_87 — 10 days ago
▲ 91 r/emulation+1 crossposts

Estacado: a static recompilation of The Darkness (Xbox 360) for PC – first pre-release

Hi all, I wanted to share a project I've been working on: Estacado, a native PC port of The Darkness (Xbox 360, 2007), made by static recompilation.

How it works

The game's PowerPC code is translated ahead of time into C++ with XenonRecomp and built on the ReXGlue SDK, whose system and Direct3D 12 GPU layer come from Xenia. There's no JIT or interpreter at runtime: the game runs as a native Windows program, while the Xenos GPU is still emulated on D3D12. The goal is a game-specific PC version, with fixes and options tailored to this one game.

What it adds

- 60, 120, 144, 240 or uncapped, with the game's timing kept correct (the world still ticks at 30 Hz, and scripted scenes, physics and audio run at their original speed)

- 1x/2x/3x internal resolution or automatic, and SMAA

- Native mouse look, rebindable keys, FOV, in-game settings (F1) and experimental widescreen

A few things that were fun to track down

- At high frame rates Jackie walked too fast, but only with a controller. An analog stick makes the game queue about 13 movement commands per frame, and above 60 FPS those overflowed its per-step packets. Keyboard input was never affected.

- The game sets its exposure by counting bright pixels with occlusion queries in a small ring of slots. Late results from the emulated GPU could land in a slot the game had already reused, which produced yellow or stuck-dark frames.

- GPU overhead: the frame-start depth clear was copying about 47M samples per frame into a buffer that was immediately overwritten, and reworking the upload path roughly halved GPU time at 1x.

You need your own copy. It supports the USA/Europe disc (En/Fr/De/Es/It) as an ISO or extracted files; the launcher checks the version and sets it up. No game data is included or linked. Requirements: Windows 10/11, an AVX2 CPU and a D3D12 GPU.

Status: pre-release. So far it's been tested on one Windows 11 PC with an NVIDIA RTX card, and played from the start up to the orphanage explosion scene. Reports from AMD, Intel and Steam Deck users are very welcome; there's a bug report template on GitHub that asks for the logs folder.

Huge thanks to the Xenia team, ReXGlue and hedge-dev's XenonRecomp. This stands entirely on their work.

GitHub: https://github.com/invinceble55-wq/Estacado

Download: https://github.com/invinceble55-wq/Estacado/releases/tag/v0.9.0

u/Faisal_alwaal — 13 days ago

ESP32-P4 Runs GBA at Full Speed (59.7 FPS) with No Frameskip (gpSP RISC-V JIT)

I ported gpSP to the ESP32-P4 and wrote a RISC-V JIT for it. The first-party Nintendo games I've tried so far run at full speed (59.7fps) with no frameskip. Even the heavy scenes in Metroid Fusion take about 14ms per frame, so there's still some headroom.

Board is a Waveshare ESP32-P4-NANO-WIFI6-DB (P4 rev 3.x, 400MHz). Controller is an 8BitDo over its 2.4G USB dongle.

I tried the Zcmt instructions that came with rev 3.x but they didn't help much, and they're a bit buggy too (from the chip itself). Haven't used SIMD yet because the renderer does a lot of scattered palette lookups. Still thinking about how to make that work.

Games that generate code in RAM and keep modifying it, like Doom, are still really slow. Planning to fix that over the holiday and put the code up on GitHub right after.

Also curious about the new S31, but it has less RAM, no L2 cache and a lower clock (320MHz), so not sure it can hit full speed. Probably need to move rendering to the other core for that one.

youtube.com
u/nnicultra — 11 days ago

Weekly Question Thread

Before asking for help:

  • Have you tried the latest version?
  • Have you tried different settings?
  • Have you updated your drivers?
  • Have you tried searching on Google?

If you feel your question warrants a self-post or may not be answered in the weekly thread, try posting it at r/EmulationOnPC. For problems with emulation on Android platforms, try posting to r/EmulationOnAndroid.

If you'd like live help, why not try the /r/Emulation Discord? Join the #tech-support
channel and ask- if you're lucky, someone'll be able to help you out.

All weekly question threads

u/AutoModerator — 10 days ago