Accessibility. NVDA doesn't work with 32-bit version of RetroArch
Open
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
Is there an existing issue for this?
- This is a bug in RetroArch frontend
- I have searched the existing issues
Description
NVDA doesn't work with 32-bit version of RetroArch.
Expected behavior
NVDA works with RetroArch.
Steps to reproduce the bug
- Download 32-bit version of RetroArch
- Download NVDAControllerClient
- Put NVDAControllerClient.dll from X86 folder into RetroArch's folder.
- Set accessibility_enable parameter to true in RetroArch.cfg file
- Launch RetroArch
Version/Commit
1.22.0
Bisect Results
No, it never worked with any versions.
Present in the nightly version
I don't know
Platform & operating system
Windows 11 25H2
Affected Cores
No response
Environment information
No response
Relevant log output
[INFO] RetroArch 1.22.0 (Git 46c5353)
[INFO] === Build =======================================
[INFO] CPU Model Name: AMD Ryzen 7 5825U with Radeon Graphics
[INFO] Capabilities: MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE42 AES AVX AVX2
[INFO] Version: 1.22.0
[INFO] Git: 46c5353
[INFO] Built: Nov 13 2025
[INFO] =================================================
[INFO] [Input] Found input driver: "dinput".
[INFO] [Environ] SET_PIXEL_FORMAT: RGB565.
[INFO] [Core] Version of libretro API: 1, Compiled against API: 1
[INFO] [Core] Geometry: 320x240, Aspect: 1.333, FPS: 60.00, Sample rate: 48000.00 Hz.
[INFO] [Video] Set video size to: 960x720.
[INFO] [XInput] Found XInput v1.4.
[INFO] [Input] Found joypad driver: "dinput".
[INFO] [D3D11] Device created (Feature Level: 11.0)
[INFO] [D3D11] Flip model and tear control supported and enabled.
[INFO] [D3D11] Requesting 1 maximum frame latency, using 1.
[INFO] [D3D11] Found GPU at index 0: "AMD Radeon (TM) Graphics".
[INFO] [D3D11] Found GPU at index 1: "Microsoft Basic Render Driver".
[INFO] [D3D11] Using GPU index 0.
[INFO] [Video] Found display server: "win32".
[INFO] [Audio] Set audio input rate to: 48000.00 Hz.
[INFO] [WASAPI] Client initialized (shared, PCM, 48000Hz, 64.0ms).
[INFO] [Audio] Started synchronous audio driver.
[INFO] [Microphone] Initialized microphone driver.
[INFO] [Display] Found display driver: "d3d11".
[INFO] [MIDI] Output device: "Microsoft GS Wavetable Synth".
[INFO] [Playlist] Loading favorites file: "C:\Games\retro games\win32\RetroArch-Win32\playlists\builtin\content_favorites.lpl".
[INFO] [Playlist] Loading history file: "C:\Games\retro games\win32\RetroArch-Win32\playlists\builtin\content_history.lpl".
[INFO] [Playlist] Loading history file: "C:\Games\retro games\win32\RetroArch-Win32\playlists\builtin\content_image_history.lpl".
[INFO] [Playlist] Loading history file: "C:\Games\retro games\win32\RetroArch-Win32\playlists\builtin\content_music_history.lpl".
[INFO] [Playlist] Loading history file: "C:\Games\retro games\win32\RetroArch-Win32\playlists\builtin\content_video_history.lpl".
[INFO] [Config] Saved config to "C:\Games\retro games\win32\RetroArch-Win32\retroarch.cfg".
[INFO] [Core] Unloading core...
[INFO] [Core] Unloading core symbols...
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue on Windows 11 with the 32-bit RetroArch build, NVDAControllerClient.dll, and accessibility_enable enabled. Then trace the accessibility_enable startup path and the 32-bit NVDA integration; done means NVDA works when launching the 32-bit build without breaking the reported startup behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- accessibility, desktop, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100