VBA Next needs verbose flag in terminal

I was setting up the config file for EmulationStation, which involves writing command templates for launching games on each system. I was able to launch nes, snes, and mega drive games like this

cmd /C ""C:\Program Files\Libretro\retroarch.exe" -L "$FullCorePath" "$FullRomPath" -f"

so for Mario World, it would call

cmd /C ""C:\Program Files\Libretro\retroarch.exe" -L "C:\Program Files\Libretro\cores\bsnes_mercury_accuracy_libretro.dll" "%E:\roms\snes\Super Mario World (USA).sfc" -f"

in my particular setup. However, the same thing did not work for GBA games with the VBA Next core (VBA-M and mGBA work fine), unless the -v flag was added. Otherwise, Retroarch hangs before opening the main window, and Windows says that it “has stopped working”.

Non-verbose output:

RetroArch: parse_config_file: Loading config from: C:\Program Files\Libretro\ret
roarch.cfg.
RetroArch: config_load_core_specific: Loading core-specific config from: C:\Prog
ram Files\Libretro\config\vba_next_libretro.dll.cfg.
RetroArch: load_symbols: Loading dynamic libretro from: "C:\Program Files\Libret
ro\cores\vba_next_libretro.dll"
RetroArch: rarch_environment_cb: Environ SET_VARIABLES.
RetroArch: rarch_verify_api_version: Version of libretro API: 1
RetroArch: rarch_verify_api_version: Compiled against API: 1
RetroArch: rarch_environment_cb: Environ GET_CAN_DUPE: true
RetroArch: rarch_environment_cb: Environ GET_LOG_INTERFACE.
RetroArch: rarch_environment_cb: Environ SET_PIXEL_FORMAT: RGB565.
RetroArch: rarch_log_libretro: [libretro INFO] :: Frontend supports RGB565 - wil
l use that instead of XRGB1555.
RetroArch: rarch_environment_cb: Environ PERFORMANCE_LEVEL: 10.
RetroArch: read_content_file: Loading content file: E:\roms\gba\0095 - Advance W
ars (U)(Mode7).gba.
RetroArch: patch_content: Did not find a valid content patch.
RetroArch: read_content_file: CRC32: 0xdbef116c .
RetroArch: rarch_environment_cb: Environ SET_INPUT_DESCRIPTORS:
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "B (bottom)" =>
 "B"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "Select" => "Se
lect"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "Start" => "Sta
rt"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "D-Pad Up" => "
D-Pad Up"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "D-Pad Down" =>
 "D-Pad Down"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "D-Pad Left" =>
 "D-Pad Left"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "D-Pad Right" =
> "D-Pad Right"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "A (right)" =>
"A"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "L" => "L"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "R" => "R"
RetroArch: rarch_log_libretro: [libretro INFO] :: GameID in ROM is: AWRE
RetroArch: rarch_log_libretro: [libretro INFO] :: RTC = 0.
RetroArch: rarch_log_libretro: [libretro INFO] :: flashSize = 65536.
RetroArch: rarch_log_libretro: [libretro INFO] :: cpuSaveType = 0.
RetroArch: rarch_log_libretro: [libretro INFO] :: mirroringEnable = 0.

Verbose output:

rarch_main_init: === Build =======================================RetroArch: rarch_get_cpu_features: [CPUID]: Vendor: AuthenticAMD
RetroArch: rarch_get_cpu_features: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 S
SSE3 SSE4 SSE4.2 AES AVX
MMX MMXEXT SSE1 SSE2 SSE3 SSSE3 SSE4 SSE4.2 AVX AES Built: Jun 13 2015
rarch_main_init: Version: 1.2
rarch_main_init: Git: d72f9fe
rarch_main_init: =================================================
RetroArch: rarch_get_cpu_features: [CPUID]: Vendor: AuthenticAMD
RetroArch: rarch_get_cpu_features: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 S
SSE3 SSE4 SSE4.2 AES AVX
RetroArch: parse_config_file: Loading config from: C:\Program Files\Libretro\ret
roarch.cfg.
RetroArch: config_load_core_specific: Loading core-specific config from: C:\Prog
ram Files\Libretro\config\vba_next_libretro.dll.cfg.
RetroArch: load_symbols: Loading dynamic libretro from: "C:\Program Files\Libret
ro\cores\vba_next_libretro.dll"
RetroArch: rarch_environment_cb: Environ SET_VARIABLES.
RetroArch: rarch_verify_api_version: Version of libretro API: 1
RetroArch: rarch_verify_api_version: Compiled against API: 1
RetroArch: rarch_environment_cb: Environ GET_CAN_DUPE: true
RetroArch: rarch_environment_cb: Environ GET_LOG_INTERFACE.
RetroArch: rarch_environment_cb: Environ SET_PIXEL_FORMAT: RGB565.
RetroArch: rarch_log_libretro: [libretro INFO] :: Frontend supports RGB565 - wil
l use that instead of XRGB1555.
RetroArch: rarch_environment_cb: Environ PERFORMANCE_LEVEL: 10.
RetroArch: read_content_file: Loading content file: E:\roms\gba\0095 - Advance W
ars (U)(Mode7).gba.
RetroArch: patch_content: Did not find a valid content patch.
RetroArch: read_content_file: CRC32: 0xdbef116c .
RetroArch: rarch_environment_cb: Environ SET_INPUT_DESCRIPTORS:
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "B (bottom)" =>
 "B"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "Select" => "Se
lect"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "Start" => "Sta
rt"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "D-Pad Up" => "
D-Pad Up"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "D-Pad Down" =>
 "D-Pad Down"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "D-Pad Left" =>
 "D-Pad Left"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "D-Pad Right" =
> "D-Pad Right"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "A (right)" =>
"A"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "L" => "L"
RetroArch: rarch_environment_cb:        RetroPad, User 1, Button "R" => "R"
RetroArch: rarch_log_libretro: [libretro INFO] :: GameID in ROM is: AWRE
RetroArch: rarch_log_libretro: [libretro INFO] :: RTC = 0.
RetroArch: rarch_log_libretro: [libretro INFO] :: flashSize = 65536.
RetroArch: rarch_log_libretro: [libretro INFO] :: cpuSaveType = 0.
RetroArch: rarch_log_libretro: [libretro INFO] :: mirroringEnable = 0.
RetroArch: event_init_content: Skipping SRAM load.
RetroArch: audio_monitor_adjust_system_rates: Set audio input rate to: 32145.45
Hz.
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\5xbr-r
etro.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\bead.c
g"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\blinky
.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\pixell
ate.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\quilez
.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\retro-
v2.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\retroa
rch.cgp"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\scanli
ne.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\sharp-
bilinear.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\stock.
cg"
RetroArch: init_video: Video @ fullscreen
RetroArch: gl_init: Found GL context: wgl
RetroArch: gl_init: Detecting screen resolution 1920x1080.
RetroArch: gfx_ctx_wgl_swap_interval: [WGL]: wglSwapInterval(1)
RetroArch: gl_init: [GL]: Vendor: ATI Technologies Inc., Renderer: AMD Radeon R9
 200 Series.
RetroArch: gl_init: [GL]: Version: 4.4.13283 Compatibility Profile Context 14.50
1.1003.0.
RetroArch: resolve_extensions: [GL]: ATI card detected, skipping check for GL_RG
B565 support.
RetroArch: gl_query_extension: Querying GL extension: ARB_sync => exists
RetroArch: gl_query_extension: Querying GL extension: ARB_texture_float => exist
s
RetroArch: gl_query_extension: Querying GL extension: EXT_texture_sRGB => exists


RetroArch: gl_query_extension: Querying GL extension: ARB_framebuffer_sRGB => ex
ists
RetroArch: gl_init: GL: Using resolution 1920x1080
RetroArch: gl_init: [GL]: Default shader backend found: glsl.
RetroArch: gl_shader_init: [GL]: Using Cg shader backend.
RetroArch: gl_cg_init: [Cg]: Vertex profile: arbvp1
RetroArch: gl_cg_init: [Cg]: Fragment profile: arbfp1
RetroArch: load_preset: Loading Cg meta-shader: C:\Program Files\Libretro\shader
s\handheld\lcd-shader\lcd-shader.cgp
RetroArch: load_shader: Loading Cg shader: "C:\Program Files\Libretro\shaders\ha
ndheld\lcd-shader\lcd-pass-0.cg".
RetroArch: load_shader: Loading Cg shader: "C:\Program Files\Libretro\shaders\ha
ndheld\lcd-shader\lcd-pass-1.cg".
RetroArch: load_shader: Loading Cg shader: "C:\Program Files\Libretro\shaders\ha
ndheld\lcd-shader\lcd-pass-2.cg".
RetroArch: load_shader: Loading Cg shader: "C:\Program Files\Libretro\shaders\ha
ndheld\lcd-shader\lcd-pass-3.cg".
RetroArch: gl_load_luts: Loading texture image from: "C:\Program Files\Libretro\
shaders\handheld\lcd-shader\background.png" ...
RetroArch: set_program_base_attrib: CG: Found semantic "POSITION" in prog #1.
RetroArch: set_program_base_attrib: CG: Found semantic "TEXCOORD0" in prog #1.
RetroArch: set_program_base_attrib: CG: Found semantic "POSITION" in prog #2.
RetroArch: set_program_base_attrib: CG: Found semantic "TEXCOORD0" in prog #2.
RetroArch: set_program_base_attrib: CG: Found semantic "POSITION" in prog #3.
RetroArch: set_program_base_attrib: CG: Found semantic "TEXCOORD0" in prog #3.
RetroArch: set_program_base_attrib: CG: Found semantic "POSITION" in prog #4.
RetroArch: set_program_base_attrib: CG: Found semantic "TEXCOORD0" in prog #4.
RetroArch: gl_init: [GL]: Using 8 textures.
RetroArch: gl_init: [GL]: Loaded 4 program(s).
RetroArch: gl_query_extension: Querying GL extension: ARB_framebuffer_object =>
exists
RetroArch: gl_init_fbo: [GL]: Creating FBO 0 @ 2048x2048
RetroArch: gl_init_fbo: [GL]: Creating FBO 1 @ 2048x2048
RetroArch: gl_init_fbo: [GL]: Creating FBO 2 @ 2048x2048
RetroArch: gl_init_fbo: [GL]: Creating FBO 3 @ 2048x2048
RetroArch: xinput_joypad_init: Found XInput v1.4.
RetroArch: xinput_joypad_init: Found XInput controller, user #0
RetroArch: dinput_joypad_init: Enumerating DInput joypads ...
RetroArch: dinput_joypad_init: Done enumerating DInput joypads ...
RetroArch: input_autoconfigure_joypad_add: Device port #0 (XInput Controller (Us
er 1)) configured.
RetroArch: input_joypad_init_first: Found joypad driver: "xinput".
RetroArch: font_renderer_create_default: Using font rendering backend: freetype.


RetroArch: rarch_get_cpu_features: [CPUID]: Vendor: AuthenticAMD
RetroArch: rarch_get_cpu_features: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 S
SSE3 SSE4 SSE4.2 AES AVX
RetroArch: dsound_init: DirectSound devices:
RetroArch: enumerate_cb:        0: Primary Sound Driver
RetroArch: enumerate_cb:        1: Headphone (VIA High Definition Audio)
RetroArch: enumerate_cb:        2: Speaker (VIA High Definition Audio)
RetroArch: enumerate_cb:        3: 1 - VX229 (AMD High Definition Audio Device)
RetroArch: enumerate_cb:        4: SPDIF Interface (TX1) (VIA High Definition Au
dio)
RetroArch: enumerate_cb:        5: SPDIF Interface (TX0) (VIA High Definition Au
dio)
RetroArch: dsound_init: [DirectSound]: Setting buffer size of 12288 bytes
RetroArch: dsound_init: [DirectSound]: Latency = 64 ms
RetroArch: rarch_get_cpu_features: [CPUID]: Vendor: AuthenticAMD
RetroArch: rarch_get_cpu_features: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 S
SSE3 SSE4 SSE4.2 AES AVX
RetroArch [WARN] :: event_init_controllers :: Input device ID 5 is unknown to th
is libretro implementation. Using RETRO_DEVICE_JOYPAD.
RetroArch: gl_set_nonblock_state: [GL]: VSync => on
RetroArch: gfx_ctx_wgl_swap_interval: [WGL]: wglSwapInterval(1)
RetroArch: event_command: Loading history file: [C:\Program Files\Libretro\conte
nt_history.lpl].
RetroArch: compute_audio_buffer_statistics: Average audio buffer saturation: 32.
45 %, standard deviation (percentage points): 23.27 %.
RetroArch: compute_audio_buffer_statistics: Amount of time spent close to underr
un: 35.06 %. Close to blocking: 3.90 %.
RetroArch: gl_cg_deinit_progs: CG: Destroying programs.
RetroArch: gl_cg_deinit_context_state: CG: Destroying context.
RetroArch: video_monitor_compute_fps_statistics: Does not have enough samples fo
r monitor refresh rate estimation. Requires to run for at least 4096 frames.
RetroArch: audio_monitor_adjust_system_rates: Set audio input rate to: 32145.45
Hz.
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\5xbr-r
etro.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\bead.c
g"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\blinky
.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\pixell
ate.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\quilez
.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\retro-
v2.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\retroa
rch.cgp"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\scanli
ne.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\sharp-
bilinear.cg"
RetroArch: event_command: Found shader "C:\Program Files\Libretro\shaders\stock.
cg"
RetroArch: init_video: Video @ 960x640
RetroArch: gl_init: Found GL context: wgl
RetroArch: gl_init: Detecting screen resolution 1920x1080.
RetroArch: gfx_ctx_wgl_swap_interval: [WGL]: wglSwapInterval(1)
RetroArch: gl_init: [GL]: Vendor: ATI Technologies Inc., Renderer: AMD Radeon R9
 200 Series.
RetroArch: gl_init: [GL]: Version: 4.4.13283 Compatibility Profile Context 14.50
1.1003.0.
RetroArch: resolve_extensions: [GL]: ATI card detected, skipping check for GL_RG
B565 support.
RetroArch: gl_query_extension: Querying GL extension: ARB_sync => exists
RetroArch: gl_query_extension: Querying GL extension: ARB_texture_float => exist
s
RetroArch: gl_query_extension: Querying GL extension: EXT_texture_sRGB => exists


RetroArch: gl_query_extension: Querying GL extension: ARB_framebuffer_sRGB => ex
ists
RetroArch: gl_init: GL: Using resolution 960x640
RetroArch: gl_init: [GL]: Default shader backend found: glsl.
RetroArch: gl_shader_init: [GL]: Using Cg shader backend.
RetroArch: gl_cg_init: [Cg]: Vertex profile: arbvp1
RetroArch: gl_cg_init: [Cg]: Fragment profile: arbfp1
RetroArch: load_preset: Loading Cg meta-shader: C:\Program Files\Libretro\shader
s\handheld\lcd-shader\lcd-shader.cgp
RetroArch: load_shader: Loading Cg shader: "C:\Program Files\Libretro\shaders\ha
ndheld\lcd-shader\lcd-pass-0.cg".
RetroArch: load_shader: Loading Cg shader: "C:\Program Files\Libretro\shaders\ha
ndheld\lcd-shader\lcd-pass-1.cg".
RetroArch: load_shader: Loading Cg shader: "C:\Program Files\Libretro\shaders\ha
ndheld\lcd-shader\lcd-pass-2.cg".
RetroArch: load_shader: Loading Cg shader: "C:\Program Files\Libretro\shaders\ha
ndheld\lcd-shader\lcd-pass-3.cg".
RetroArch: gl_load_luts: Loading texture image from: "C:\Program Files\Libretro\
shaders\handheld\lcd-shader\background.png" ...
RetroArch: set_program_base_attrib: CG: Found semantic "POSITION" in prog #1.
RetroArch: set_program_base_attrib: CG: Found semantic "TEXCOORD0" in prog #1.
RetroArch: set_program_base_attrib: CG: Found semantic "POSITION" in prog #2.
RetroArch: set_program_base_attrib: CG: Found semantic "TEXCOORD0" in prog #2.
RetroArch: set_program_base_attrib: CG: Found semantic "POSITION" in prog #3.
RetroArch: set_program_base_attrib: CG: Found semantic "TEXCOORD0" in prog #3.
RetroArch: set_program_base_attrib: CG: Found semantic "POSITION" in prog #4.
RetroArch: set_program_base_attrib: CG: Found semantic "TEXCOORD0" in prog #4.
RetroArch: gl_init: [GL]: Using 8 textures.
RetroArch: gl_init: [GL]: Loaded 4 program(s).
RetroArch: gl_query_extension: Querying GL extension: ARB_framebuffer_object =>
exists
RetroArch: gl_init_fbo: [GL]: Creating FBO 0 @ 1024x1024
RetroArch: gl_init_fbo: [GL]: Creating FBO 1 @ 1024x1024
RetroArch: gl_init_fbo: [GL]: Creating FBO 2 @ 1024x1024
RetroArch: gl_init_fbo: [GL]: Creating FBO 3 @ 1024x1024
RetroArch: xinput_joypad_init: Found XInput v1.4.
RetroArch: xinput_joypad_init: Found XInput controller, user #0
RetroArch: dinput_joypad_init: Enumerating DInput joypads ...
RetroArch: dinput_joypad_init: Done enumerating DInput joypads ...
RetroArch: input_autoconfigure_joypad_add: Device port #0 (XInput Controller (Us
er 1)) configured.
RetroArch: input_joypad_init_first: Found joypad driver: "xinput".
RetroArch: font_renderer_create_default: Using font rendering backend: freetype.


RetroArch: rarch_get_cpu_features: [CPUID]: Vendor: AuthenticAMD
RetroArch: rarch_get_cpu_features: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 S
SSE3 SSE4 SSE4.2 AES AVX
RetroArch: dsound_init: DirectSound devices:
RetroArch: enumerate_cb:        0: Primary Sound Driver
RetroArch: enumerate_cb:        1: Headphone (VIA High Definition Audio)
RetroArch: enumerate_cb:        2: Speaker (VIA High Definition Audio)
RetroArch: enumerate_cb:        3: 1 - VX229 (AMD High Definition Audio Device)
RetroArch: enumerate_cb:        4: SPDIF Interface (TX1) (VIA High Definition Au
dio)
RetroArch: enumerate_cb:        5: SPDIF Interface (TX0) (VIA High Definition Au
dio)
RetroArch: dsound_init: [DirectSound]: Setting buffer size of 12288 bytes
RetroArch: dsound_init: [DirectSound]: Latency = 64 ms
RetroArch: rarch_get_cpu_features: [CPUID]: Vendor: AuthenticAMD
RetroArch: rarch_get_cpu_features: [CPUID]: Features: MMX MMXEXT SSE SSE2 SSE3 S
SSE3 SSE4 SSE4.2 AES AVX
RetroArch: event_command: Paused.

The results are the same if EmulationStation is bypassed, and the “cmd /C” part is omitted, by typing the command directly into the command line—i.e. this:

"C:\Program Files\Libretro\retroarch.exe" -L "C:\Program Files\Libretro\cores\vba_next_libretro.dll" "C:\Program Files\Libretro\content\0095 - Advance Wars (U)(Mode7).gba" -f

doesn’t work, but this:

"C:\Program Files\Libretro\retroarch.exe" -L "C:\Program Files\Libretro\cores\vba_next_libretro.dll" "C:\Program Files\Libretro\content\0095 - Advance Wars (U)(Mode7).gba" -f -v

does. I don’t know what the -v flag exactly can and cannot do (I thought it only affected output, silly me), so I can offer no assistance in terms of finding the problem. But maybe someone else can?

cmd /C ""C:\Program Files\Libretro\retroarch.exe" -L "$FullCorePath" "$FullRomPath" -f"

I don’t use EmulationStation but I think this should be something like this:

cmd /C "\"C:\Program Files\Libretro\retroarch.exe\" -L \"$FullCorePath\" \"$FullRomPath\" -f"

If that doesn’t work, update your RetroArch copy. There have been about 100 commits since the June 13 nightly and these have changed over three thousand lines of code.