[WIN10] NES Running Slow

I’ve done well for myself answering my own questions so far. I’m trying to get Retroarch going on my step dad’s laptop for him but I have run into a few bumps. First it couldn’t find the directx9 dll and after searching I found out where to download and install it. Then it came up with an application error 0cX000007b or something which I searched and found a solution by running the x86 retroarch (even though it’s a 64 bit with 64 bit windows). Then the PS4 controller wouldn’t work which after searching I found that I just needed to change the input settings. Then my audio didn’t work but I remembered to change the driver from my past experience. Now though, I’m stumped.

I have first downloaded some NES games and they are running slow as well as the audio which is running slow. Not sure what to do and my searches haven’t resulted in any solutions.

As always I appreciate your help. I have done my best to refrain from posting until now.

Sincerely, Brendan

Wow, that’s quite the struggle!

Regarding DirectX, you can and should use OpenGL instead, as the RetroArch D3D driver is pretty much abandoned at this point and vendor drivers have improved their OpenGL support on Windows in the past couple years. Is D3D still the default driver in Windows? If so, that definitely needs to be changed.

Regarding x86 RetroArch, I suspect the core you were using was just x86 and not x86_64, which meant it would crash. There should really be a check for this, but there isn’t, so it just crashes. Luckily, if you get your cores from the “Online Updater” within XMB (the menu), you don’t have to worry about that, since the right type is detected.

Regarding PS4 controller, you need a PS4 controller driver such as http://ds4windows.com/ in order to use most of its features.

I’m sorry that this information wasn’t available to you at the times you encountered these problems.

Regarding NES being slow, try disabling rewind (as that makes it save state every few frames, which blocks execution) and using OpenGL. Also try using the Nestopia-libretro core from the online updater and using the latest 64-bit build of RetroArch from the nightly build bot: http://buildbot.libretro.com/nightly/windows/x86_64/ . Get “Redist-x86_64.7z” and “RetroArch.7z” from there and extract them to the same directory. You may want to back up your cfg file first if you’ve configured a bunch of stuff already.

I think he just meant that he needed the directx 9.0c runtime, which isn’t included in win8+. GL is the default, IIRC.

@MadDokk If you can try running retroarch_debug.exe from a command line, it should print any errors to the console window, so you can see if it’s spamming any warnings, etc.

While it’s running slow, if you open the process monitor, is any of your CPU cores maxed out? I doubt it, but it’s probably a good idea to rule it out first.

Sorry for the misunderstanding. I was simply going through all the issues I had already solved and how I solved them in case it was pertinent to my current issue (which I think it is). The information was all here, each time I ran a search for each issue I was able to find a solution except for why the games were running slow.

To solve the direct x issue I just slapped the .dll in my system folder which created the other error preventing Retroarch from starting which I solved by using the x86 version which now has the issue of the games running slow.

Instead, I will try reverting back to the 64 bit version and change the driver settings manually in the .cfg file to OpenGL and see if that fixes it. I won’t be able to try this until after the weekend. But yes, it appears the default driver is Dirext X

When changing the video driver to OpenGL in the cfg file, use “gl”, as even though that just means “graphics library”, that’s what the RA devs have been calling it.

When I try to run the 64 bit version of Retroarch I get this error “The application was unable to start correctly (0xc000007b). Click OK to close the application.” When I start it with the debug.exe nothing comes up.

When I run the x86 version with the debug, this is the result (and rewind was off by default)

C:\Program Files (x86)\Retroarch_x86>retroarch_debug.exe --menu --verbose RetroArch [INFO] :: === Build =======================================RetroArch [INFO] :: [CPUID]: Vendor: AuthenticAMD RetroArch [INFO] :: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 SSSE3 MMX MMXEXT SSE1 SSE2 SSE3 SSSE3 Built: May 3 2016 RetroArch [INFO] :: Version: 1.3.4 RetroArch [INFO] :: Git: acd1e0b RetroArch [INFO] :: ================================================= RetroArch [INFO] :: [CPUID]: Vendor: AuthenticAMD RetroArch [INFO] :: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 SSSE3 RetroArch [INFO] :: Config: loading config from: C:\Program Files (x86)\Retroarch_x86\retroarch.cfg. RetroArch [INFO] :: Environ SET_PIXEL_FORMAT: RGB565. RetroArch [INFO] :: Version of libretro API: 1 RetroArch [INFO] :: Compiled against API: 1 RetroArch [INFO] :: Set audio input rate to: 29975.00 Hz. RetroArch [INFO] :: Video @ 960x720 RetroArch [INFO] :: Found GL context: wgl RetroArch [INFO] :: Detecting screen resolution 1600x900. RetroArch [INFO] :: [WGL]: wglSwapInterval(1) RetroArch [INFO] :: [GL]: Vendor: ATI Technologies Inc., Renderer: AMD Radeon HD 6320 Graphics. RetroArch [INFO] :: [GL]: Version: 4.5.13399 Compatibility Profile Context 15.201.1151.0. RetroArch [INFO] :: [GL]: ATI card detected, skipping check for GL_RGB565 support. RetroArch [INFO] :: Querying GL extension: ARB_sync => exists RetroArch [INFO] :: Querying GL extension: ARB_texture_float => exists RetroArch [INFO] :: Querying GL extension: EXT_texture_sRGB => exists RetroArch [INFO] :: Querying GL extension: ARB_framebuffer_sRGB => exists RetroArch [INFO] :: GL: Using resolution 960x720 RetroArch [INFO] :: [GL]: Default shader backend found: glsl. RetroArch [INFO] :: [Shader driver]: Using GLSL shader backend. RetroArch [INFO] :: Checking GLSL shader support … RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: [GL]: Using 4 textures. RetroArch [INFO] :: [GL]: Loaded 1 program(s). RetroArch [INFO] :: Found XInput v1.4. RetroArch [INFO] :: Found XInput controller, user #0 RetroArch [INFO] :: Enumerating DInput joypads … RetroArch [INFO] :: Device #0 PID: {028E} VID:{045E} RetroArch [INFO] :: Device #1 PID: {05C4} VID:{054C} RetroArch [INFO] :: Autodetect: 0 profiles found RetroArch [INFO] :: Autodetect: no profiles found for Wireless Controller (1356/1476) RetroArch [INFO] :: Done enumerating DInput joypads … RetroArch [INFO] :: Autodetect: 0 profiles found RetroArch [INFO] :: Found joypad driver: “xinput”. RetroArch [INFO] :: Using font rendering backend: freetype. RetroArch [INFO] :: [CPUID]: Vendor: AuthenticAMD RetroArch [INFO] :: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 SSSE3 RetroArch [INFO] :: XAudio2: Requesting 64 ms latency, using 64 ms latency. RetroArch [ERROR] :: Failed to init XAudio2. RetroArch [ERROR] :: Failed to initialize audio driver. Will continue without audio. RetroArch [INFO] :: [CPUID]: Vendor: AuthenticAMD RetroArch [INFO] :: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 SSSE3 RetroArch [INFO] :: Found menu display driver: “menu_display_gl”. RetroArch [INFO] :: Using font rendering backend: freetype. RetroArch [INFO] :: Using font rendering backend: freetype. RetroArch [INFO] :: SRAM will not be saved. RetroArch [INFO] :: null: [C:\Program Files (x86)\Retroarch_x86\content_history.lpl]. RetroArch [INFO] :: [GL]: VSync => on RetroArch [INFO] :: [WGL]: wglSwapInterval(1) RetroArch [ERROR] :: Failed to start audio driver. Will continue without audio. RetroArch [ERROR] :: cannot push NULL or empty core info into the playlist. RetroArch [INFO] :: [GL]: VSync => on RetroArch [INFO] :: [WGL]: wglSwapInterval(1) RetroArch [INFO] :: Using content: C:\Program Files (x86)\Retroarch_x86\ROMS\dkong\Donkey Kong Classics (USA, Europe).nes. RetroArch [INFO] :: arg #0: retroarch RetroArch [INFO] :: arg #1: C:\Program Files (x86)\Retroarch_x86\ROMS\dkong\Donkey Kong Classics (USA, Europe).nes RetroArch [INFO] :: arg #2: -s RetroArch [INFO] :: arg #3: C:\Program Files (x86)\Retroarch_x86\saves RetroArch [INFO] :: arg #4: -S RetroArch [INFO] :: arg #5: C:\Program Files (x86)\Retroarch_x86\states RetroArch [INFO] :: arg #6: -c RetroArch [INFO] :: arg #7: C:\Program Files (x86)\Retroarch_x86\retroarch.cfg RetroArch [INFO] :: arg #8: -L RetroArch [INFO] :: arg #9: C:\Program Files (x86)\Retroarch_x86\cores\bnes_libretro.dll RetroArch [INFO] :: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames. RetroArch [INFO] :: Redirecting save file to “C:\Program Files (x86)\Retroarch_x86\saves\Donkey Kong Classics (USA, Europe).srm”. RetroArch [INFO] :: Redirecting savestate to “C:\Program Files (x86)\Retroarch_x86\states\Donkey Kong Classics (USA, Europe).state”. RetroArch [INFO] :: === Build =======================================RetroArch [INFO] :: [CPUID]: Vendor: AuthenticAMD RetroArch [INFO] :: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 SSSE3 MMX MMXEXT SSE1 SSE2 SSE3 SSSE3 Built: May 3 2016 RetroArch [INFO] :: Version: 1.3.4 RetroArch [INFO] :: Git: acd1e0b RetroArch [INFO] :: ================================================= RetroArch [INFO] :: [CPUID]: Vendor: AuthenticAMD RetroArch [INFO] :: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 SSSE3 RetroArch [INFO] :: Loading dynamic libretro core from: “C:\Program Files (x86)\Retroarch_x86\cores\bnes_libretro.dll” RetroArch [INFO] :: Overrides: no core-specific overrides found at C:\Program Files (x86)\Retroarch_x86\config\bnes\bnes.cfg RetroArch [INFO] :: Overrides: no game-specific overrides found at C:\Program Files (x86)\Retroarch_x86\config\bnes\Donkey Kong Classics (USA, Europe).cfg RetroArch [INFO] :: Remaps: core name: bnes RetroArch [INFO] :: Remaps: game name: Donkey Kong Classics (USA, Europe) RetroArch [INFO] :: Remaps: remap directory: C:\Program Files (x86)\Retroarch_x86\config/remaps RetroArch [INFO] :: Remaps: no game-specific remap found at C:\Program Files (x86)\Retroarch_x86\config/remaps/bnes/Donkey Kong Classics (USA, Europe).rmp RetroArch [INFO] :: Remaps: no core-specific remap found at C:\Program Files (x86)\Retroarch_x86\config/remaps/bnes/bnes.rmp RetroArch [INFO] :: Loading content file: C:\Program Files (x86)\Retroarch_x86\ROMS\dkong\Donkey Kong Classics (USA, Europe).nes. RetroArch [INFO] :: Did not find a valid content patch. RetroArch [INFO] :: CRC32: 0x17ec0cc7 . RetroArch [INFO] :: Skipping SRAM load… RetroArch [INFO] :: Version of libretro API: 1 RetroArch [INFO] :: Compiled against API: 1 RetroArch [INFO] :: Set audio input rate to: 31920.23 Hz. RetroArch [INFO] :: Video @ 768x720 RetroArch [WARN] :: 0RGB1555 pixel format is deprecated, and will be slower. For 15/16-bit, RGB565 format is preferred. RetroArch [INFO] :: Found GL context: wgl RetroArch [INFO] :: Detecting screen resolution 1600x900. RetroArch [INFO] :: [WGL]: wglSwapInterval(1) RetroArch [INFO] :: [GL]: Vendor: ATI Technologies Inc., Renderer: AMD Radeon HD 6320 Graphics. RetroArch [INFO] :: [GL]: Version: 4.5.13399 Compatibility Profile Context 15.201.1151.0. RetroArch [INFO] :: [GL]: ATI card detected, skipping check for GL_RGB565 support. RetroArch [INFO] :: Querying GL extension: ARB_sync => exists RetroArch [INFO] :: Querying GL extension: ARB_texture_float => exists RetroArch [INFO] :: Querying GL extension: EXT_texture_sRGB => exists RetroArch [INFO] :: Querying GL extension: ARB_framebuffer_sRGB => exists RetroArch [INFO] :: GL: Using resolution 768x720 RetroArch [INFO] :: [GL]: Default shader backend found: glsl. RetroArch [INFO] :: [Shader driver]: Using GLSL shader backend. RetroArch [INFO] :: Checking GLSL shader support … RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: Found GLSL vertex shader. RetroArch [INFO] :: Found GLSL fragment shader. RetroArch [INFO] :: Linking GLSL program. RetroArch [INFO] :: [GL]: Using 4 textures. RetroArch [INFO] :: [GL]: Loaded 1 program(s). RetroArch [INFO] :: Found XInput v1.4. RetroArch [INFO] :: Found XInput controller, user #0 RetroArch [INFO] :: Enumerating DInput joypads … RetroArch [INFO] :: Device #0 PID: {028E} VID:{045E} RetroArch [INFO] :: Device #1 PID: {05C4} VID:{054C} RetroArch [INFO] :: Autodetect: 0 profiles found RetroArch [INFO] :: Autodetect: no profiles found for Wireless Controller (1356/1476) RetroArch [INFO] :: Done enumerating DInput joypads … RetroArch [INFO] :: Autodetect: 0 profiles found RetroArch [INFO] :: Found joypad driver: “xinput”. RetroArch [INFO] :: Using font rendering backend: freetype. RetroArch [INFO] :: [CPUID]: Vendor: AuthenticAMD RetroArch [INFO] :: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 SSSE3 RetroArch [INFO] :: SDL audio: Requested 64 ms latency, got 85 ms RetroArch [INFO] :: [CPUID]: Vendor: AuthenticAMD RetroArch [INFO] :: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 SSSE3 RetroArch [WARN] :: Audio rate control was desired, but driver does not support needed features. RetroArch [INFO] :: Using font rendering backend: freetype. RetroArch [INFO] :: null: [C:\Program Files (x86)\Retroarch_x86\content_history.lpl]. RetroArch [INFO] :: [GL]: VSync => on RetroArch [INFO] :: [WGL]: wglSwapInterval(1) RetroArch [INFO] :: [GL]: VSync => on RetroArch [INFO] :: [WGL]: wglSwapInterval(1) RetroArch [INFO] :: Saving config at path: “C:\Program Files (x86)\Retroarch_x86\retroarch.cfg” RetroArch [INFO] :: Saved new config to “C:\Program Files (x86)\Retroarch_x86\retroarch.cfg”. RetroArch [INFO] :: Saving RAM type #0 to “C:\Program Files (x86)\Retroarch_x86\saves\Donkey Kong Classics (USA, Europe).srm”. RetroArch [INFO] :: Saving RAM type #1 to “C:\Program Files (x86)\Retroarch_x86\saves\Donkey Kong Classics (USA, Europe).rtc”. RetroArch [INFO] :: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames. RetroArch [INFO] :: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.

[QUOTE=MadDokK;41738]When I try to run the 64 bit version of Retroarch I get this error “The application was unable to start correctly (0xc000007b). Click OK to close the application.” When I start it with the debug.exe nothing comes up.

When I run the x86 version with the debug, this is the result (and rewind was off by default)[/QUOTE]

I think you need to install VC++. Install the x64 versions.

I installed VC++ 2013 and am getting the same error. This is pretty frustrating when it works fine on my other laptop. Any thoughts? As usual I appreciate your help. Sorry it took me so long to get back to you. I was in a motorcycle accident but am fine.