You are not logged in.

#1 2025-09-18 18:17:46

RogerRabbit
Member
Registered: 2022-12-18
Posts: 79

[Solved] RetroArch does not run anymore in xcb mode

Hello everyone,

It's been a few months since I launched it, so I don't know what update may have caused the issue, but retroarch does not start anymore when launched from a "raw tty terminal" (not sure what is the correct terminology for that).

$ retroarch
[INFO] RetroArch 1.21.0 (Git baee906ef3)
[INFO] === Build =======================================
[INFO] CPU Model Name: AMD Ryzen AI 9 HX 370 w/ Radeon 890M           
[INFO] Capabilities: MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE42 AES AVX AVX2 
[INFO] Version: 1.21.0
[INFO] Git: baee906ef3
[INFO] Built: May  1 2025
[INFO] =================================================
[INFO] [Input]: Found input driver: "x".
[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.
[ERROR] [Wayland]: Failed to connect to Wayland server.
[INFO] [Vulkan]: Vulkan dynamic library loaded.
[INFO] [Vulkan]: Found vulkan context: "khr_display".
[INFO] [Vulkan]: Detecting screen resolution: 0x0.
[INFO] [Vulkan]: Found GPU at index 0: "AMD Radeon 890M Graphics (RADV GFX1150)".
[INFO] [Vulkan]: Using GPU index 0.
[INFO] [Vulkan]: Found GPU at index 0: "AMD Radeon 890M Graphics (RADV GFX1150)".
[INFO] [Vulkan]: Using GPU index 0.
[INFO] [Vulkan]: Using semaphores for WSI acquire.
[INFO] [Vulkan]: Using GPU: "AMD Radeon 890M Graphics (RADV GFX1150)".
[INFO] [Vulkan]: Queue family 0 supports 1 sub-queues.
[INFO] [Vulkan]: Got 3 swapchain images.
[INFO] [Vulkan]: Using resolution 4096x2160.
[INFO] [Vulkan]: Using RGB565 format.
[INFO] [Vulkan]: Loading stock shader.
[INFO] [udev]: Keyboard #0: "Video Bus" (/dev/input/event4).
[INFO] [udev]: Keyboard #1: "Power Button" (/dev/input/event0).
[INFO] [udev]: Keyboard #2: "Sleep Button" (/dev/input/event1).
[INFO] [udev]: Keyboard #3: "  mini keyboard" (/dev/input/event3).
[INFO] [udev]: Keyboard #4: "  mini keyboard System Control" (/dev/input/event6).
[INFO] [udev]: Keyboard #5: "  mini keyboard Consumer Control" (/dev/input/event7).
[INFO] [udev]: Keyboard #6: "AT Translated Set 2 keyboard" (/dev/input/event2).
[INFO] [udev]: Mouse/Touch #0: "  mini keyboard Mouse" (REL) /dev/input/event5.
[INFO] [Joypad]: Found joypad driver: "udev".
[INFO] [Video]: Found display server: "null".
[INFO] [Audio]: Set audio input rate to: 48000.00 Hz.
[INFO] [PulseAudio]: Requested 24576 bytes buffer, got 18432.
[INFO] [Audio]: Started synchronous audio driver.
[INFO] [ALSA] Using ALSA version 1.2.14
[INFO] [Microphone]: Initialized microphone driver.
[INFO] [Display]: Found display driver: "vulkan".
[INFO] [Playlist]: Loading history file: "/home/muser/.config/retroarch/content_history.lpl".
[INFO] [Playlist]: Loading history file: "/home/muser/.config/retroarch/content_music_history.lpl".
[INFO] [Playlist]: Loading history file: "/home/muser/.config/retroarch/content_video_history.lpl".
[INFO] [Playlist]: Loading history file: "/home/muser/.config/retroarch/content_image_history.lpl".
[INFO] [Playlist]: Loading favorites file: "/home/muser/.config/retroarch/content_favorites.lpl".
qt.qpa.xcb: could not connect to display 
qt.qpa.plugin: From 6.5.0, xcb-cursor0 or libxcb-cursor0 is needed to load the Qt xcb platform plugin.
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, xcb, offscreen, minimalegl, vkkhrdisplay, vnc, wayland, minimal, linuxfb, wayland-egl.

Package xcb-util-cursor is installed, but I can't find the "xcb-cursor0 or libxcb-cursor0" files mentionned in the log, I do have libxcb-cursor.so and libxcb-cursor.so.0 though...
RetroArch runs if I launch it through gamescope (gamescope -- retroarch)

Last edited by RogerRabbit (2025-09-20 01:43:06)

Offline

#2 2025-09-18 20:27:34

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 24,960

Re: [Solved] RetroArch does not run anymore in xcb mode

xcb is because it fails to trying to load qt for some reason, generally speaking it should do neither when a proper KMS run is attempted, you probably changed some config and now KMS (that's the word you're looking for)/framebuffer mode is not attempted, at least according to the features flag it's still built in. Can you post your retroarch config (~/.config/retroarch/retroarch.cfg by default)?

FWIW the fact that it picks input driver "x" as a first choice is already weird, and if that's the case it will look for a running xorg server based on that alone, you'd want udev or sdl or so as the input drivers for a KMS setup.

Offline

#3 2025-09-18 21:00:44

RogerRabbit
Member
Registered: 2022-12-18
Posts: 79

Re: [Solved] RetroArch does not run anymore in xcb mode

I always did find it weird to have x as the input driver, but it worked so I did not change it.
Here is the config file:

$ cat .config/retroarch/retroarch.cfg
accessibility_enable = "false"
accessibility_narrator_speech_speed = "5"
ai_service_enable = "false"
ai_service_mode = "1"
ai_service_pause = "false"
ai_service_source_lang = "0"
ai_service_target_lang = "0"
ai_service_url = "http://localhost:4404/"
all_users_control_menu = "false"
app_icon = "default"
apply_cheats_after_load = "false"
apply_cheats_after_toggle = "false"
aspect_ratio_index = "22"
assets_directory = "/usr/share/retroarch/assets"
audio_block_frames = "0"
audio_device = ""
audio_driver = "pulse"
audio_dsp_plugin = ""
audio_enable = "true"
audio_enable_menu = "false"
audio_enable_menu_bgm = "false"
audio_enable_menu_cancel = "false"
audio_enable_menu_notice = "false"
audio_enable_menu_ok = "false"
audio_enable_menu_scroll = "false"
audio_fastforward_mute = "false"
audio_fastforward_speedup = "false"
audio_filter_dir = "/usr/lib/retroarch/filters/audio"
audio_latency = "64"
audio_max_timing_skew = "0.050000"
audio_mixer_mute_enable = "false"
audio_mixer_volume = "0.000000"
audio_mute_enable = "false"
audio_out_rate = "48000"
audio_rate_control = "true"
audio_rate_control_delta = "0.005000"
audio_resampler = "sinc"
audio_resampler_quality = "3"
audio_rewind_mute = "false"
audio_sync = "true"
audio_volume = "0.000000"
auto_overrides_enable = "true"
auto_remaps_enable = "true"
auto_screenshot_filename = "true"
auto_shaders_enable = "true"
autosave_interval = "10"
block_sram_overwrite = "false"
bluetooth_driver = "null"
builtin_imageviewer_enable = "true"
builtin_mediaplayer_enable = "true"
bundle_assets_dst_path = ""
bundle_assets_dst_path_subdir = ""
bundle_assets_extract_enable = "false"
bundle_assets_extract_last_version = "0"
bundle_assets_extract_version_current = "0"
bundle_assets_src_path = ""
cache_directory = ""
camera_allow = "false"
camera_device = ""
camera_driver = "video4linux2"
cheat_database_path = "~/.config/retroarch/cheats"
check_firmware_before_loading = "false"
cheevos_appearance_anchor = "0"
cheevos_appearance_padding_auto = "true"
cheevos_appearance_padding_h = "0.000000"
cheevos_appearance_padding_v = "0.000000"
cheevos_auto_screenshot = "false"
cheevos_badges_enable = "false"
cheevos_challenge_indicators = "true"
cheevos_custom_host = ""
cheevos_enable = "false"
cheevos_hardcore_mode_enable = "true"
cheevos_leaderboards_enable = ""
cheevos_password = ""
cheevos_richpresence_enable = "true"
cheevos_start_active = "false"
cheevos_test_unofficial = "false"
cheevos_token = ""
cheevos_unlock_sound_enable = "false"
cheevos_username = ""
cheevos_verbose_enable = "true"
cheevos_visibility_account = "true"
cheevos_visibility_lboard_cancel = "true"
cheevos_visibility_lboard_start = "true"
cheevos_visibility_lboard_submit = "true"
cheevos_visibility_lboard_trackers = "true"
cheevos_visibility_mastery = "true"
cheevos_visibility_progress_tracker = "true"
cheevos_visibility_summary = "1"
cheevos_visibility_unlock = "true"
cloud_sync_destructive = "false"
cloud_sync_driver = ""
cloud_sync_enable = "false"
cloud_sync_sync_configs = "true"
cloud_sync_sync_saves = "true"
cloud_sync_sync_system = "false"
cloud_sync_sync_thumbs = "false"
config_save_on_exit = "true"
content_database_path = "~/.config/retroarch/database/rdb"
content_favorites_directory = "default"
content_favorites_path = "~/.config/retroarch/content_favorites.lpl"
content_favorites_size = "200"
content_history_directory = "default"
content_history_path = "~/.config/retroarch/content_history.lpl"
content_history_size = "200"
content_image_history_directory = "default"
content_image_history_path = "~/.config/retroarch/content_image_history.lpl"
content_music_history_directory = "default"
content_music_history_path = "~/.config/retroarch/content_music_history.lpl"
content_runtime_log = "true"
content_runtime_log_aggregate = "false"
content_show_add = "true"
content_show_add_entry = "2"
content_show_contentless_cores = "2"
content_show_explore = "true"
content_show_favorites = "true"
content_show_history = "true"
content_show_images = "true"
content_show_music = "false"
content_show_netplay = "true"
content_show_playlist_tabs = "true"
content_show_playlists = "true"
content_show_settings = "true"
content_show_settings_password = ""
content_show_video = "true"
content_video_directory = "default"
content_video_history_path = "~/.config/retroarch/content_video_history.lpl"
core_assets_directory = "~/.config/retroarch/downloads"
core_info_cache_enable = "false"
core_info_savestate_bypass = "false"
core_option_category_enable = "true"
core_options_path = ""
core_set_supports_no_game_enable = "true"
core_updater_auto_backup = "true"
core_updater_auto_backup_history_size = "1"
core_updater_auto_extract_archive = "true"
core_updater_buildbot_assets_url = "http://buildbot.libretro.com/assets/"
core_updater_buildbot_cores_url = "http://buildbot.libretro.com/nightly/linux/x86_64/latest/"
core_updater_show_experimental_cores = "false"
crt_switch_center_adjust = "0"
crt_switch_hires_menu = "false"
crt_switch_porch_adjust = "0"
crt_switch_resolution = "0"
crt_switch_resolution_super = "2560"
crt_switch_resolution_use_custom_refresh_rate = "false"
crt_switch_timings = ""
crt_video_refresh_rate = "60.000000"
current_resolution_id = "0"
custom_viewport_height = "3360"
custom_viewport_width = "3840"
custom_viewport_x = "0"
custom_viewport_y = "0"
desktop_menu_enable = "true"
discord_allow = "false"
discord_app_id = "475456035851599874"
driver_switch_enable = "true"
dynamic_wallpapers_directory = "default"
enable_device_vibration = "false"
facebook_stream_key = ""
fastforward_frameskip = "true"
fastforward_ratio = "0.000000"
filter_by_current_core = "false"
flicker_filter_enable = "false"
flicker_filter_index = "0"
fps_show = "false"
fps_update_interval = "256"
frame_time_counter_reset_after_fastforwarding = "false"
frame_time_counter_reset_after_load_state = "false"
frame_time_counter_reset_after_save_state = "false"
framecount_show = "false"
frontend_log_level = "1"
game_specific_options = "true"
gamemode_enable = "true"
gamma_correction = "0"
global_core_options = "false"
history_list_enable = "true"
initial_disk_change_enable = "true"
input_ai_service = "nul"
input_ai_service_axis = "nul"
input_ai_service_btn = "nul"
input_ai_service_mbtn = "nul"
input_allow_turbo_dpad = "false"
input_analog_deadzone = "0.000000"
input_analog_sensitivity = "1.000000"
input_audio_mute = "f9"
input_audio_mute_axis = "nul"
input_audio_mute_btn = "nul"
input_audio_mute_mbtn = "nul"
input_auto_game_focus = "0"
input_auto_mouse_grab = "false"
input_autodetect_enable = "true"
input_axis_threshold = "0.500000"
input_bind_hold = "0"
input_bind_timeout = "3"
input_cheat_index_minus = "t"
input_cheat_index_minus_axis = "nul"
input_cheat_index_minus_btn = "nul"
input_cheat_index_minus_mbtn = "nul"
input_cheat_index_plus = "y"
input_cheat_index_plus_axis = "nul"
input_cheat_index_plus_btn = "nul"
input_cheat_index_plus_mbtn = "nul"
input_cheat_toggle = "u"
input_cheat_toggle_axis = "nul"
input_cheat_toggle_btn = "nul"
input_cheat_toggle_mbtn = "nul"
input_close_content = "nul"
input_close_content_axis = "nul"
input_close_content_btn = "nul"
input_close_content_mbtn = "nul"
input_descriptor_hide_unbound = "false"
input_descriptor_label_show = "true"
input_desktop_menu_toggle = "f5"
input_desktop_menu_toggle_axis = "nul"
input_desktop_menu_toggle_btn = "nul"
input_desktop_menu_toggle_mbtn = "nul"
input_device_p1 = "0"
input_device_p10 = "0"
input_device_p11 = "0"
input_device_p12 = "0"
input_device_p13 = "0"
input_device_p14 = "0"
input_device_p15 = "0"
input_device_p16 = "0"
input_device_p2 = "0"
input_device_p3 = "0"
input_device_p4 = "0"
input_device_p5 = "0"
input_device_p6 = "0"
input_device_p7 = "0"
input_device_p8 = "0"
input_device_p9 = "0"
input_disk_eject_toggle = "nul"
input_disk_eject_toggle_axis = "nul"
input_disk_eject_toggle_btn = "nul"
input_disk_eject_toggle_mbtn = "nul"
input_disk_next = "nul"
input_disk_next_axis = "nul"
input_disk_next_btn = "nul"
input_disk_next_mbtn = "nul"
input_disk_prev = "nul"
input_disk_prev_axis = "nul"
input_disk_prev_btn = "nul"
input_disk_prev_mbtn = "nul"
input_driver = "x"
input_duty_cycle = "3"
input_enable_hotkey = "nul"
input_enable_hotkey_axis = "nul"
input_enable_hotkey_btn = "10"
input_enable_hotkey_mbtn = "nul"
input_exit_emulator = "escape"
input_exit_emulator_axis = "nul"
input_exit_emulator_btn = "9"
input_exit_emulator_mbtn = "nul"
input_fps_toggle = "f3"
input_fps_toggle_axis = "nul"
input_fps_toggle_btn = "nul"
input_fps_toggle_mbtn = "nul"
input_frame_advance = "k"
input_frame_advance_axis = "nul"
input_frame_advance_btn = "nul"
input_frame_advance_mbtn = "nul"
input_game_focus_toggle = "scroll_lock"
input_game_focus_toggle_axis = "nul"
input_game_focus_toggle_btn = "nul"
input_game_focus_toggle_mbtn = "nul"
input_grab_mouse_toggle = "f11"
input_grab_mouse_toggle_axis = "nul"
input_grab_mouse_toggle_btn = "nul"
input_grab_mouse_toggle_mbtn = "nul"
input_halt_replay = "nul"
input_halt_replay_axis = "nul"
input_halt_replay_btn = "nul"
input_halt_replay_mbtn = "nul"
input_hold_fast_forward = "l"
input_hold_fast_forward_axis = "nul"
input_hold_fast_forward_btn = "7"
input_hold_fast_forward_mbtn = "nul"
input_hold_slowmotion = "e"
input_hold_slowmotion_axis = "nul"
input_hold_slowmotion_btn = "nul"
input_hold_slowmotion_mbtn = "nul"
input_hotkey_block_delay = "5"
input_hotkey_device_merge = "false"
input_joypad_driver = "udev"
input_keyboard_layout = ""
input_load_state = "f4"
input_load_state_axis = "nul"
input_load_state_btn = "4"
input_load_state_mbtn = "nul"
input_max_users = "8"
input_menu_toggle = "f1"
input_menu_toggle_axis = "nul"
input_menu_toggle_btn = "2"
input_menu_toggle_gamepad_combo = "0"
input_menu_toggle_mbtn = "nul"
input_netplay_fade_chat_toggle = "nul"
input_netplay_fade_chat_toggle_axis = "nul"
input_netplay_fade_chat_toggle_btn = "nul"
input_netplay_fade_chat_toggle_mbtn = "nul"
input_netplay_game_watch = "i"
input_netplay_game_watch_axis = "nul"
input_netplay_game_watch_btn = "nul"
input_netplay_game_watch_mbtn = "nul"
input_netplay_host_toggle = "nul"
input_netplay_host_toggle_axis = "nul"
input_netplay_host_toggle_btn = "nul"
input_netplay_host_toggle_mbtn = "nul"
input_netplay_ping_toggle = "nul"
input_netplay_ping_toggle_axis = "nul"
input_netplay_ping_toggle_btn = "nul"
input_netplay_ping_toggle_mbtn = "nul"
input_netplay_player_chat = "tilde"
input_netplay_player_chat_axis = "nul"
input_netplay_player_chat_btn = "nul"
input_netplay_player_chat_mbtn = "nul"
input_nowinkey_enable = "false"
input_osk_overlay = ""
input_osk_overlay_auto_scale = "false"
input_osk_overlay_opacity = "0.700000"
input_osk_toggle = "nul"
input_osk_toggle_axis = "nul"
input_osk_toggle_btn = "nul"
input_osk_toggle_mbtn = "nul"
input_overlay = ""
input_overlay_abxy_diagonal_sensitivity = "50"
input_overlay_analog_recenter_zone = "0"
input_overlay_aspect_adjust_landscape = "0.000000"
input_overlay_aspect_adjust_portrait = "0.000000"
input_overlay_auto_rotate = "false"
input_overlay_auto_scale = "false"
input_overlay_behind_menu = "false"
input_overlay_dpad_diagonal_sensitivity = "80"
input_overlay_enable = "false"
input_overlay_enable_autopreferred = "true"
input_overlay_hide_in_menu = "true"
input_overlay_hide_when_gamepad_connected = "false"
input_overlay_lightgun_allow_offscreen = "true"
input_overlay_lightgun_four_touch_input = "0"
input_overlay_lightgun_port = "-1"
input_overlay_lightgun_three_touch_input = "0"
input_overlay_lightgun_trigger_delay = "1"
input_overlay_lightgun_trigger_on_touch = "true"
input_overlay_lightgun_two_touch_input = "0"
input_overlay_mouse_dtap_msec = "200"
input_overlay_mouse_dtap_to_drag = "false"
input_overlay_mouse_hold_msec = "200"
input_overlay_mouse_hold_to_drag = "true"
input_overlay_mouse_speed = "1.000000"
input_overlay_mouse_swipe_threshold = "1.000000"
input_overlay_next = "nul"
input_overlay_next_axis = "nul"
input_overlay_next_btn = "nul"
input_overlay_next_mbtn = "nul"
input_overlay_opacity = "0.700000"
input_overlay_pointer_enable = "false"
input_overlay_scale_landscape = "1.000000"
input_overlay_scale_portrait = "1.000000"
input_overlay_show_inputs = "2"
input_overlay_show_inputs_port = "0"
input_overlay_show_mouse_cursor = "true"
input_overlay_x_offset_landscape = "0.000000"
input_overlay_x_offset_portrait = "0.000000"
input_overlay_x_separation_landscape = "0.000000"
input_overlay_x_separation_portrait = "0.000000"
input_overlay_y_offset_landscape = "0.000000"
input_overlay_y_offset_portrait = "0.000000"
input_overlay_y_separation_landscape = "0.000000"
input_overlay_y_separation_portrait = "0.000000"
input_pause_toggle = "p"
input_pause_toggle_axis = "nul"
input_pause_toggle_btn = "nul"
input_pause_toggle_mbtn = "nul"
input_play_replay = "nul"
input_play_replay_axis = "nul"
input_play_replay_btn = "nul"
input_play_replay_mbtn = "nul"
input_player10_a = "nul"
input_player10_a_axis = "nul"
input_player10_a_btn = "nul"
input_player10_a_mbtn = "nul"
input_player10_analog_dpad_mode = "0"
input_player10_b = "nul"
input_player10_b_axis = "nul"
input_player10_b_btn = "nul"
input_player10_b_mbtn = "nul"
input_player10_device_reservation_type = "0"
input_player10_down = "nul"
input_player10_down_axis = "nul"
input_player10_down_btn = "nul"
input_player10_down_mbtn = "nul"
input_player10_gun_aux_a = "nul"
input_player10_gun_aux_a_axis = "nul"
input_player10_gun_aux_a_btn = "nul"
input_player10_gun_aux_a_mbtn = "nul"
input_player10_gun_aux_b = "nul"
input_player10_gun_aux_b_axis = "nul"
input_player10_gun_aux_b_btn = "nul"
input_player10_gun_aux_b_mbtn = "nul"
input_player10_gun_aux_c = "nul"
input_player10_gun_aux_c_axis = "nul"
input_player10_gun_aux_c_btn = "nul"
input_player10_gun_aux_c_mbtn = "nul"
input_player10_gun_dpad_down = "nul"
input_player10_gun_dpad_down_axis = "nul"
input_player10_gun_dpad_down_btn = "nul"
input_player10_gun_dpad_down_mbtn = "nul"
input_player10_gun_dpad_left = "nul"
input_player10_gun_dpad_left_axis = "nul"
input_player10_gun_dpad_left_btn = "nul"
input_player10_gun_dpad_left_mbtn = "nul"
input_player10_gun_dpad_right = "nul"
input_player10_gun_dpad_right_axis = "nul"
input_player10_gun_dpad_right_btn = "nul"
input_player10_gun_dpad_right_mbtn = "nul"
input_player10_gun_dpad_up = "nul"
input_player10_gun_dpad_up_axis = "nul"
input_player10_gun_dpad_up_btn = "nul"
input_player10_gun_dpad_up_mbtn = "nul"
input_player10_gun_offscreen_shot = "nul"
input_player10_gun_offscreen_shot_axis = "nul"
input_player10_gun_offscreen_shot_btn = "nul"
input_player10_gun_offscreen_shot_mbtn = "2"
input_player10_gun_select = "nul"
input_player10_gun_select_axis = "nul"
input_player10_gun_select_btn = "nul"
input_player10_gun_select_mbtn = "nul"
input_player10_gun_start = "nul"
input_player10_gun_start_axis = "nul"
input_player10_gun_start_btn = "nul"
input_player10_gun_start_mbtn = "nul"
input_player10_gun_trigger = "nul"
input_player10_gun_trigger_axis = "nul"
input_player10_gun_trigger_btn = "nul"
input_player10_gun_trigger_mbtn = "1"
input_player10_joypad_index = "9"
input_player10_l = "nul"
input_player10_l2 = "nul"
input_player10_l2_axis = "nul"
input_player10_l2_btn = "nul"
input_player10_l2_mbtn = "nul"
input_player10_l3 = "nul"
input_player10_l3_axis = "nul"
input_player10_l3_btn = "nul"
input_player10_l3_mbtn = "nul"
input_player10_l_axis = "nul"
input_player10_l_btn = "nul"
input_player10_l_mbtn = "nul"
input_player10_l_x_minus = "nul"
input_player10_l_x_minus_axis = "nul"
input_player10_l_x_minus_btn = "nul"
input_player10_l_x_minus_mbtn = "nul"
input_player10_l_x_plus = "nul"
input_player10_l_x_plus_axis = "nul"
input_player10_l_x_plus_btn = "nul"
input_player10_l_x_plus_mbtn = "nul"
input_player10_l_y_minus = "nul"
input_player10_l_y_minus_axis = "nul"
input_player10_l_y_minus_btn = "nul"
input_player10_l_y_minus_mbtn = "nul"
input_player10_l_y_plus = "nul"
input_player10_l_y_plus_axis = "nul"
input_player10_l_y_plus_btn = "nul"
input_player10_l_y_plus_mbtn = "nul"
input_player10_left = "nul"
input_player10_left_axis = "nul"
input_player10_left_btn = "nul"
input_player10_left_mbtn = "nul"
input_player10_mouse_index = "9"
input_player10_r = "nul"
input_player10_r2 = "nul"
input_player10_r2_axis = "nul"
input_player10_r2_btn = "nul"
input_player10_r2_mbtn = "nul"
input_player10_r3 = "nul"
input_player10_r3_axis = "nul"
input_player10_r3_btn = "nul"
input_player10_r3_mbtn = "nul"
input_player10_r_axis = "nul"
input_player10_r_btn = "nul"
input_player10_r_mbtn = "nul"
input_player10_r_x_minus = "nul"
input_player10_r_x_minus_axis = "nul"
input_player10_r_x_minus_btn = "nul"
input_player10_r_x_minus_mbtn = "nul"
input_player10_r_x_plus = "nul"
input_player10_r_x_plus_axis = "nul"
input_player10_r_x_plus_btn = "nul"
input_player10_r_x_plus_mbtn = "nul"
input_player10_r_y_minus = "nul"
input_player10_r_y_minus_axis = "nul"
input_player10_r_y_minus_btn = "nul"
input_player10_r_y_minus_mbtn = "nul"
input_player10_r_y_plus = "nul"
input_player10_r_y_plus_axis = "nul"
input_player10_r_y_plus_btn = "nul"
input_player10_r_y_plus_mbtn = "nul"
input_player10_reserved_device = ""
input_player10_right = "nul"
input_player10_right_axis = "nul"
input_player10_right_btn = "nul"
input_player10_right_mbtn = "nul"
input_player10_select = "nul"
input_player10_select_axis = "nul"
input_player10_select_btn = "nul"
input_player10_select_mbtn = "nul"
input_player10_start = "nul"
input_player10_start_axis = "nul"
input_player10_start_btn = "nul"
input_player10_start_mbtn = "nul"
input_player10_turbo = "nul"
input_player10_turbo_axis = "nul"
input_player10_turbo_btn = "nul"
input_player10_turbo_mbtn = "nul"
input_player10_up = "nul"
input_player10_up_axis = "nul"
input_player10_up_btn = "nul"
input_player10_up_mbtn = "nul"
input_player10_x = "nul"
input_player10_x_axis = "nul"
input_player10_x_btn = "nul"
input_player10_x_mbtn = "nul"
input_player10_y = "nul"
input_player10_y_axis = "nul"
input_player10_y_btn = "nul"
input_player10_y_mbtn = "nul"
input_player11_a = "nul"
input_player11_a_axis = "nul"
input_player11_a_btn = "nul"
input_player11_a_mbtn = "nul"
input_player11_analog_dpad_mode = "0"
input_player11_b = "nul"
input_player11_b_axis = "nul"
input_player11_b_btn = "nul"
input_player11_b_mbtn = "nul"
input_player11_device_reservation_type = "0"
input_player11_down = "nul"
input_player11_down_axis = "nul"
input_player11_down_btn = "nul"
input_player11_down_mbtn = "nul"
input_player11_gun_aux_a = "nul"
input_player11_gun_aux_a_axis = "nul"
input_player11_gun_aux_a_btn = "nul"
input_player11_gun_aux_a_mbtn = "nul"
input_player11_gun_aux_b = "nul"
input_player11_gun_aux_b_axis = "nul"
input_player11_gun_aux_b_btn = "nul"
input_player11_gun_aux_b_mbtn = "nul"
input_player11_gun_aux_c = "nul"
input_player11_gun_aux_c_axis = "nul"
input_player11_gun_aux_c_btn = "nul"
input_player11_gun_aux_c_mbtn = "nul"
input_player11_gun_dpad_down = "nul"
input_player11_gun_dpad_down_axis = "nul"
input_player11_gun_dpad_down_btn = "nul"
input_player11_gun_dpad_down_mbtn = "nul"
input_player11_gun_dpad_left = "nul"
input_player11_gun_dpad_left_axis = "nul"
input_player11_gun_dpad_left_btn = "nul"
input_player11_gun_dpad_left_mbtn = "nul"
input_player11_gun_dpad_right = "nul"
input_player11_gun_dpad_right_axis = "nul"
input_player11_gun_dpad_right_btn = "nul"
input_player11_gun_dpad_right_mbtn = "nul"
input_player11_gun_dpad_up = "nul"
input_player11_gun_dpad_up_axis = "nul"
input_player11_gun_dpad_up_btn = "nul"
input_player11_gun_dpad_up_mbtn = "nul"
input_player11_gun_offscreen_shot = "nul"
input_player11_gun_offscreen_shot_axis = "nul"
input_player11_gun_offscreen_shot_btn = "nul"
input_player11_gun_offscreen_shot_mbtn = "2"
input_player11_gun_select = "nul"
input_player11_gun_select_axis = "nul"
input_player11_gun_select_btn = "nul"
input_player11_gun_select_mbtn = "nul"
input_player11_gun_start = "nul"
input_player11_gun_start_axis = "nul"
input_player11_gun_start_btn = "nul"
input_player11_gun_start_mbtn = "nul"
input_player11_gun_trigger = "nul"
input_player11_gun_trigger_axis = "nul"
input_player11_gun_trigger_btn = "nul"
input_player11_gun_trigger_mbtn = "1"
input_player11_joypad_index = "10"
input_player11_l = "nul"
input_player11_l2 = "nul"
input_player11_l2_axis = "nul"
input_player11_l2_btn = "nul"
input_player11_l2_mbtn = "nul"
input_player11_l3 = "nul"
input_player11_l3_axis = "nul"
input_player11_l3_btn = "nul"
input_player11_l3_mbtn = "nul"
input_player11_l_axis = "nul"
input_player11_l_btn = "nul"
input_player11_l_mbtn = "nul"
input_player11_l_x_minus = "nul"
input_player11_l_x_minus_axis = "nul"
input_player11_l_x_minus_btn = "nul"
input_player11_l_x_minus_mbtn = "nul"
input_player11_l_x_plus = "nul"
input_player11_l_x_plus_axis = "nul"
input_player11_l_x_plus_btn = "nul"
input_player11_l_x_plus_mbtn = "nul"
input_player11_l_y_minus = "nul"
input_player11_l_y_minus_axis = "nul"
input_player11_l_y_minus_btn = "nul"
input_player11_l_y_minus_mbtn = "nul"
input_player11_l_y_plus = "nul"
input_player11_l_y_plus_axis = "nul"
input_player11_l_y_plus_btn = "nul"
input_player11_l_y_plus_mbtn = "nul"
input_player11_left = "nul"
input_player11_left_axis = "nul"
input_player11_left_btn = "nul"
input_player11_left_mbtn = "nul"
input_player11_mouse_index = "10"
input_player11_r = "nul"
input_player11_r2 = "nul"
input_player11_r2_axis = "nul"
input_player11_r2_btn = "nul"
input_player11_r2_mbtn = "nul"
input_player11_r3 = "nul"
input_player11_r3_axis = "nul"
input_player11_r3_btn = "nul"
input_player11_r3_mbtn = "nul"
input_player11_r_axis = "nul"
input_player11_r_btn = "nul"
input_player11_r_mbtn = "nul"
input_player11_r_x_minus = "nul"
input_player11_r_x_minus_axis = "nul"
input_player11_r_x_minus_btn = "nul"
input_player11_r_x_minus_mbtn = "nul"
input_player11_r_x_plus = "nul"
input_player11_r_x_plus_axis = "nul"
input_player11_r_x_plus_btn = "nul"
input_player11_r_x_plus_mbtn = "nul"
input_player11_r_y_minus = "nul"
input_player11_r_y_minus_axis = "nul"
input_player11_r_y_minus_btn = "nul"
input_player11_r_y_minus_mbtn = "nul"
input_player11_r_y_plus = "nul"
input_player11_r_y_plus_axis = "nul"
input_player11_r_y_plus_btn = "nul"
input_player11_r_y_plus_mbtn = "nul"
input_player11_reserved_device = ""
input_player11_right = "nul"
input_player11_right_axis = "nul"
input_player11_right_btn = "nul"
input_player11_right_mbtn = "nul"
input_player11_select = "nul"
input_player11_select_axis = "nul"
input_player11_select_btn = "nul"
input_player11_select_mbtn = "nul"
input_player11_start = "nul"
input_player11_start_axis = "nul"
input_player11_start_btn = "nul"
input_player11_start_mbtn = "nul"
input_player11_turbo = "nul"
input_player11_turbo_axis = "nul"
input_player11_turbo_btn = "nul"
input_player11_turbo_mbtn = "nul"
input_player11_up = "nul"
input_player11_up_axis = "nul"
input_player11_up_btn = "nul"
input_player11_up_mbtn = "nul"
input_player11_x = "nul"
input_player11_x_axis = "nul"
input_player11_x_btn = "nul"
input_player11_x_mbtn = "nul"
input_player11_y = "nul"
input_player11_y_axis = "nul"
input_player11_y_btn = "nul"
input_player11_y_mbtn = "nul"
input_player12_a = "nul"
input_player12_a_axis = "nul"
input_player12_a_btn = "nul"
input_player12_a_mbtn = "nul"
input_player12_analog_dpad_mode = "0"
input_player12_b = "nul"
input_player12_b_axis = "nul"
input_player12_b_btn = "nul"
input_player12_b_mbtn = "nul"
input_player12_device_reservation_type = "0"
input_player12_down = "nul"
input_player12_down_axis = "nul"
input_player12_down_btn = "nul"
input_player12_down_mbtn = "nul"
input_player12_gun_aux_a = "nul"
input_player12_gun_aux_a_axis = "nul"
input_player12_gun_aux_a_btn = "nul"
input_player12_gun_aux_a_mbtn = "nul"
input_player12_gun_aux_b = "nul"
input_player12_gun_aux_b_axis = "nul"
input_player12_gun_aux_b_btn = "nul"
input_player12_gun_aux_b_mbtn = "nul"
input_player12_gun_aux_c = "nul"
input_player12_gun_aux_c_axis = "nul"
input_player12_gun_aux_c_btn = "nul"
input_player12_gun_aux_c_mbtn = "nul"
input_player12_gun_dpad_down = "nul"
input_player12_gun_dpad_down_axis = "nul"
input_player12_gun_dpad_down_btn = "nul"
input_player12_gun_dpad_down_mbtn = "nul"
input_player12_gun_dpad_left = "nul"
input_player12_gun_dpad_left_axis = "nul"
input_player12_gun_dpad_left_btn = "nul"
input_player12_gun_dpad_left_mbtn = "nul"
input_player12_gun_dpad_right = "nul"
input_player12_gun_dpad_right_axis = "nul"
input_player12_gun_dpad_right_btn = "nul"
input_player12_gun_dpad_right_mbtn = "nul"
input_player12_gun_dpad_up = "nul"
input_player12_gun_dpad_up_axis = "nul"
input_player12_gun_dpad_up_btn = "nul"
input_player12_gun_dpad_up_mbtn = "nul"
input_player12_gun_offscreen_shot = "nul"
input_player12_gun_offscreen_shot_axis = "nul"
input_player12_gun_offscreen_shot_btn = "nul"
input_player12_gun_offscreen_shot_mbtn = "2"
input_player12_gun_select = "nul"
input_player12_gun_select_axis = "nul"
input_player12_gun_select_btn = "nul"
input_player12_gun_select_mbtn = "nul"
input_player12_gun_start = "nul"
input_player12_gun_start_axis = "nul"
input_player12_gun_start_btn = "nul"
input_player12_gun_start_mbtn = "nul"
input_player12_gun_trigger = "nul"
input_player12_gun_trigger_axis = "nul"
input_player12_gun_trigger_btn = "nul"
input_player12_gun_trigger_mbtn = "1"
input_player12_joypad_index = "11"
input_player12_l = "nul"
input_player12_l2 = "nul"
input_player12_l2_axis = "nul"
input_player12_l2_btn = "nul"
input_player12_l2_mbtn = "nul"
input_player12_l3 = "nul"
input_player12_l3_axis = "nul"
input_player12_l3_btn = "nul"
input_player12_l3_mbtn = "nul"
input_player12_l_axis = "nul"
input_player12_l_btn = "nul"
input_player12_l_mbtn = "nul"
input_player12_l_x_minus = "nul"
input_player12_l_x_minus_axis = "nul"
input_player12_l_x_minus_btn = "nul"
input_player12_l_x_minus_mbtn = "nul"
input_player12_l_x_plus = "nul"
input_player12_l_x_plus_axis = "nul"
input_player12_l_x_plus_btn = "nul"
input_player12_l_x_plus_mbtn = "nul"
input_player12_l_y_minus = "nul"
input_player12_l_y_minus_axis = "nul"
input_player12_l_y_minus_btn = "nul"
input_player12_l_y_minus_mbtn = "nul"
input_player12_l_y_plus = "nul"
input_player12_l_y_plus_axis = "nul"
input_player12_l_y_plus_btn = "nul"
input_player12_l_y_plus_mbtn = "nul"
input_player12_left = "nul"
input_player12_left_axis = "nul"
input_player12_left_btn = "nul"
input_player12_left_mbtn = "nul"
input_player12_mouse_index = "11"
input_player12_r = "nul"
input_player12_r2 = "nul"
input_player12_r2_axis = "nul"
input_player12_r2_btn = "nul"
input_player12_r2_mbtn = "nul"
input_player12_r3 = "nul"
input_player12_r3_axis = "nul"
input_player12_r3_btn = "nul"
input_player12_r3_mbtn = "nul"
input_player12_r_axis = "nul"
input_player12_r_btn = "nul"
input_player12_r_mbtn = "nul"
input_player12_r_x_minus = "nul"
input_player12_r_x_minus_axis = "nul"
input_player12_r_x_minus_btn = "nul"
input_player12_r_x_minus_mbtn = "nul"
input_player12_r_x_plus = "nul"
input_player12_r_x_plus_axis = "nul"
input_player12_r_x_plus_btn = "nul"
input_player12_r_x_plus_mbtn = "nul"
input_player12_r_y_minus = "nul"
input_player12_r_y_minus_axis = "nul"
input_player12_r_y_minus_btn = "nul"
input_player12_r_y_minus_mbtn = "nul"
input_player12_r_y_plus = "nul"
input_player12_r_y_plus_axis = "nul"
input_player12_r_y_plus_btn = "nul"
input_player12_r_y_plus_mbtn = "nul"
input_player12_reserved_device = ""
input_player12_right = "nul"
input_player12_right_axis = "nul"
input_player12_right_btn = "nul"
input_player12_right_mbtn = "nul"
input_player12_select = "nul"
input_player12_select_axis = "nul"
input_player12_select_btn = "nul"
input_player12_select_mbtn = "nul"
input_player12_start = "nul"
input_player12_start_axis = "nul"
input_player12_start_btn = "nul"
input_player12_start_mbtn = "nul"
input_player12_turbo = "nul"
input_player12_turbo_axis = "nul"
input_player12_turbo_btn = "nul"
input_player12_turbo_mbtn = "nul"
input_player12_up = "nul"
input_player12_up_axis = "nul"
input_player12_up_btn = "nul"
input_player12_up_mbtn = "nul"
input_player12_x = "nul"
input_player12_x_axis = "nul"
input_player12_x_btn = "nul"
input_player12_x_mbtn = "nul"
input_player12_y = "nul"
input_player12_y_axis = "nul"
input_player12_y_btn = "nul"
input_player12_y_mbtn = "nul"
input_player13_a = "nul"
input_player13_a_axis = "nul"
input_player13_a_btn = "nul"
input_player13_a_mbtn = "nul"
input_player13_analog_dpad_mode = "0"
input_player13_b = "nul"
input_player13_b_axis = "nul"
input_player13_b_btn = "nul"
input_player13_b_mbtn = "nul"
input_player13_device_reservation_type = "0"
input_player13_down = "nul"
input_player13_down_axis = "nul"
input_player13_down_btn = "nul"
input_player13_down_mbtn = "nul"
input_player13_gun_aux_a = "nul"
input_player13_gun_aux_a_axis = "nul"
input_player13_gun_aux_a_btn = "nul"
input_player13_gun_aux_a_mbtn = "nul"
input_player13_gun_aux_b = "nul"
input_player13_gun_aux_b_axis = "nul"
input_player13_gun_aux_b_btn = "nul"
input_player13_gun_aux_b_mbtn = "nul"
input_player13_gun_aux_c = "nul"
input_player13_gun_aux_c_axis = "nul"
input_player13_gun_aux_c_btn = "nul"
input_player13_gun_aux_c_mbtn = "nul"
input_player13_gun_dpad_down = "nul"
input_player13_gun_dpad_down_axis = "nul"
input_player13_gun_dpad_down_btn = "nul"
input_player13_gun_dpad_down_mbtn = "nul"
input_player13_gun_dpad_left = "nul"
input_player13_gun_dpad_left_axis = "nul"
input_player13_gun_dpad_left_btn = "nul"
input_player13_gun_dpad_left_mbtn = "nul"
input_player13_gun_dpad_right = "nul"
input_player13_gun_dpad_right_axis = "nul"
input_player13_gun_dpad_right_btn = "nul"
input_player13_gun_dpad_right_mbtn = "nul"
input_player13_gun_dpad_up = "nul"
input_player13_gun_dpad_up_axis = "nul"
input_player13_gun_dpad_up_btn = "nul"
input_player13_gun_dpad_up_mbtn = "nul"
input_player13_gun_offscreen_shot = "nul"
input_player13_gun_offscreen_shot_axis = "nul"
input_player13_gun_offscreen_shot_btn = "nul"
input_player13_gun_offscreen_shot_mbtn = "2"
input_player13_gun_select = "nul"
input_player13_gun_select_axis = "nul"
input_player13_gun_select_btn = "nul"
input_player13_gun_select_mbtn = "nul"
input_player13_gun_start = "nul"
input_player13_gun_start_axis = "nul"
input_player13_gun_start_btn = "nul"
input_player13_gun_start_mbtn = "nul"
input_player13_gun_trigger = "nul"
input_player13_gun_trigger_axis = "nul"
input_player13_gun_trigger_btn = "nul"
input_player13_gun_trigger_mbtn = "1"
input_player13_joypad_index = "12"
input_player13_l = "nul"
input_player13_l2 = "nul"
input_player13_l2_axis = "nul"
input_player13_l2_btn = "nul"
input_player13_l2_mbtn = "nul"
input_player13_l3 = "nul"
input_player13_l3_axis = "nul"
input_player13_l3_btn = "nul"
input_player13_l3_mbtn = "nul"
input_player13_l_axis = "nul"
input_player13_l_btn = "nul"
input_player13_l_mbtn = "nul"
input_player13_l_x_minus = "nul"
input_player13_l_x_minus_axis = "nul"
input_player13_l_x_minus_btn = "nul"
input_player13_l_x_minus_mbtn = "nul"
input_player13_l_x_plus = "nul"
input_player13_l_x_plus_axis = "nul"
input_player13_l_x_plus_btn = "nul"
input_player13_l_x_plus_mbtn = "nul"
input_player13_l_y_minus = "nul"
input_player13_l_y_minus_axis = "nul"
input_player13_l_y_minus_btn = "nul"
input_player13_l_y_minus_mbtn = "nul"
input_player13_l_y_plus = "nul"
input_player13_l_y_plus_axis = "nul"
input_player13_l_y_plus_btn = "nul"
input_player13_l_y_plus_mbtn = "nul"
input_player13_left = "nul"
input_player13_left_axis = "nul"
input_player13_left_btn = "nul"
input_player13_left_mbtn = "nul"
input_player13_mouse_index = "12"
input_player13_r = "nul"
input_player13_r2 = "nul"
input_player13_r2_axis = "nul"
input_player13_r2_btn = "nul"
input_player13_r2_mbtn = "nul"
input_player13_r3 = "nul"
input_player13_r3_axis = "nul"
input_player13_r3_btn = "nul"
input_player13_r3_mbtn = "nul"
input_player13_r_axis = "nul"
input_player13_r_btn = "nul"
input_player13_r_mbtn = "nul"
input_player13_r_x_minus = "nul"
input_player13_r_x_minus_axis = "nul"
input_player13_r_x_minus_btn = "nul"
input_player13_r_x_minus_mbtn = "nul"
input_player13_r_x_plus = "nul"
input_player13_r_x_plus_axis = "nul"
input_player13_r_x_plus_btn = "nul"
input_player13_r_x_plus_mbtn = "nul"
input_player13_r_y_minus = "nul"
input_player13_r_y_minus_axis = "nul"
input_player13_r_y_minus_btn = "nul"
input_player13_r_y_minus_mbtn = "nul"
input_player13_r_y_plus = "nul"
input_player13_r_y_plus_axis = "nul"
input_player13_r_y_plus_btn = "nul"
input_player13_r_y_plus_mbtn = "nul"
input_player13_reserved_device = ""
input_player13_right = "nul"
input_player13_right_axis = "nul"
input_player13_right_btn = "nul"
input_player13_right_mbtn = "nul"
input_player13_select = "nul"
input_player13_select_axis = "nul"
input_player13_select_btn = "nul"
input_player13_select_mbtn = "nul"
input_player13_start = "nul"
input_player13_start_axis = "nul"
input_player13_start_btn = "nul"
input_player13_start_mbtn = "nul"
input_player13_turbo = "nul"
input_player13_turbo_axis = "nul"
input_player13_turbo_btn = "nul"
input_player13_turbo_mbtn = "nul"
input_player13_up = "nul"
input_player13_up_axis = "nul"
input_player13_up_btn = "nul"
input_player13_up_mbtn = "nul"
input_player13_x = "nul"
input_player13_x_axis = "nul"
input_player13_x_btn = "nul"
input_player13_x_mbtn = "nul"
input_player13_y = "nul"
input_player13_y_axis = "nul"
input_player13_y_btn = "nul"
input_player13_y_mbtn = "nul"
input_player14_a = "nul"
input_player14_a_axis = "nul"
input_player14_a_btn = "nul"
input_player14_a_mbtn = "nul"
input_player14_analog_dpad_mode = "0"
input_player14_b = "nul"
input_player14_b_axis = "nul"
input_player14_b_btn = "nul"
input_player14_b_mbtn = "nul"
input_player14_device_reservation_type = "0"
input_player14_down = "nul"
input_player14_down_axis = "nul"
input_player14_down_btn = "nul"
input_player14_down_mbtn = "nul"
input_player14_gun_aux_a = "nul"
input_player14_gun_aux_a_axis = "nul"
input_player14_gun_aux_a_btn = "nul"
input_player14_gun_aux_a_mbtn = "nul"
input_player14_gun_aux_b = "nul"
input_player14_gun_aux_b_axis = "nul"
input_player14_gun_aux_b_btn = "nul"
input_player14_gun_aux_b_mbtn = "nul"
input_player14_gun_aux_c = "nul"
input_player14_gun_aux_c_axis = "nul"
input_player14_gun_aux_c_btn = "nul"
input_player14_gun_aux_c_mbtn = "nul"
input_player14_gun_dpad_down = "nul"
input_player14_gun_dpad_down_axis = "nul"
input_player14_gun_dpad_down_btn = "nul"
input_player14_gun_dpad_down_mbtn = "nul"
input_player14_gun_dpad_left = "nul"
input_player14_gun_dpad_left_axis = "nul"
input_player14_gun_dpad_left_btn = "nul"
input_player14_gun_dpad_left_mbtn = "nul"
input_player14_gun_dpad_right = "nul"
input_player14_gun_dpad_right_axis = "nul"
input_player14_gun_dpad_right_btn = "nul"
input_player14_gun_dpad_right_mbtn = "nul"
input_player14_gun_dpad_up = "nul"
input_player14_gun_dpad_up_axis = "nul"
input_player14_gun_dpad_up_btn = "nul"
input_player14_gun_dpad_up_mbtn = "nul"
input_player14_gun_offscreen_shot = "nul"
input_player14_gun_offscreen_shot_axis = "nul"
input_player14_gun_offscreen_shot_btn = "nul"
input_player14_gun_offscreen_shot_mbtn = "2"
input_player14_gun_select = "nul"
input_player14_gun_select_axis = "nul"
input_player14_gun_select_btn = "nul"
input_player14_gun_select_mbtn = "nul"
input_player14_gun_start = "nul"
input_player14_gun_start_axis = "nul"
input_player14_gun_start_btn = "nul"
input_player14_gun_start_mbtn = "nul"
input_player14_gun_trigger = "nul"
input_player14_gun_trigger_axis = "nul"
input_player14_gun_trigger_btn = "nul"
input_player14_gun_trigger_mbtn = "1"
input_player14_joypad_index = "13"
input_player14_l = "nul"
input_player14_l2 = "nul"
input_player14_l2_axis = "nul"
input_player14_l2_btn = "nul"
input_player14_l2_mbtn = "nul"
input_player14_l3 = "nul"
input_player14_l3_axis = "nul"
input_player14_l3_btn = "nul"
input_player14_l3_mbtn = "nul"
input_player14_l_axis = "nul"
input_player14_l_btn = "nul"
input_player14_l_mbtn = "nul"
input_player14_l_x_minus = "nul"
input_player14_l_x_minus_axis = "nul"
input_player14_l_x_minus_btn = "nul"
input_player14_l_x_minus_mbtn = "nul"
input_player14_l_x_plus = "nul"
input_player14_l_x_plus_axis = "nul"
input_player14_l_x_plus_btn = "nul"
input_player14_l_x_plus_mbtn = "nul"
input_player14_l_y_minus = "nul"
input_player14_l_y_minus_axis = "nul"
input_player14_l_y_minus_btn = "nul"
input_player14_l_y_minus_mbtn = "nul"
input_player14_l_y_plus = "nul"
input_player14_l_y_plus_axis = "nul"
input_player14_l_y_plus_btn = "nul"
input_player14_l_y_plus_mbtn = "nul"
input_player14_left = "nul"
input_player14_left_axis = "nul"
input_player14_left_btn = "nul"
input_player14_left_mbtn = "nul"
input_player14_mouse_index = "13"
input_player14_r = "nul"
input_player14_r2 = "nul"
input_player14_r2_axis = "nul"
input_player14_r2_btn = "nul"
input_player14_r2_mbtn = "nul"
input_player14_r3 = "nul"
input_player14_r3_axis = "nul"
input_player14_r3_btn = "nul"
input_player14_r3_mbtn = "nul"
input_player14_r_axis = "nul"
input_player14_r_btn = "nul"
input_player14_r_mbtn = "nul"
input_player14_r_x_minus = "nul"
input_player14_r_x_minus_axis = "nul"
input_player14_r_x_minus_btn = "nul"
input_player14_r_x_minus_mbtn = "nul"
input_player14_r_x_plus = "nul"
input_player14_r_x_plus_axis = "nul"
input_player14_r_x_plus_btn = "nul"
input_player14_r_x_plus_mbtn = "nul"
input_player14_r_y_minus = "nul"
input_player14_r_y_minus_axis = "nul"
input_player14_r_y_minus_btn = "nul"
input_player14_r_y_minus_mbtn = "nul"
input_player14_r_y_plus = "nul"
input_player14_r_y_plus_axis = "nul"
input_player14_r_y_plus_btn = "nul"
input_player14_r_y_plus_mbtn = "nul"
input_player14_reserved_device = ""
input_player14_right = "nul"
input_player14_right_axis = "nul"
input_player14_right_btn = "nul"
input_player14_right_mbtn = "nul"
input_player14_select = "nul"
input_player14_select_axis = "nul"
input_player14_select_btn = "nul"
input_player14_select_mbtn = "nul"
input_player14_start = "nul"
input_player14_start_axis = "nul"
input_player14_start_btn = "nul"
input_player14_start_mbtn = "nul"
input_player14_turbo = "nul"
input_player14_turbo_axis = "nul"
input_player14_turbo_btn = "nul"
input_player14_turbo_mbtn = "nul"
input_player14_up = "nul"
input_player14_up_axis = "nul"
input_player14_up_btn = "nul"
input_player14_up_mbtn = "nul"
input_player14_x = "nul"
input_player14_x_axis = "nul"
input_player14_x_btn = "nul"
input_player14_x_mbtn = "nul"
input_player14_y = "nul"
input_player14_y_axis = "nul"
input_player14_y_btn = "nul"
input_player14_y_mbtn = "nul"
input_player15_a = "nul"
input_player15_a_axis = "nul"
input_player15_a_btn = "nul"
input_player15_a_mbtn = "nul"
input_player15_analog_dpad_mode = "0"
input_player15_b = "nul"
input_player15_b_axis = "nul"
input_player15_b_btn = "nul"
input_player15_b_mbtn = "nul"
input_player15_device_reservation_type = "0"
input_player15_down = "nul"
input_player15_down_axis = "nul"
input_player15_down_btn = "nul"
input_player15_down_mbtn = "nul"
input_player15_gun_aux_a = "nul"
input_player15_gun_aux_a_axis = "nul"
input_player15_gun_aux_a_btn = "nul"
input_player15_gun_aux_a_mbtn = "nul"
input_player15_gun_aux_b = "nul"
input_player15_gun_aux_b_axis = "nul"
input_player15_gun_aux_b_btn = "nul"
input_player15_gun_aux_b_mbtn = "nul"
input_player15_gun_aux_c = "nul"
input_player15_gun_aux_c_axis = "nul"
input_player15_gun_aux_c_btn = "nul"
input_player15_gun_aux_c_mbtn = "nul"
input_player15_gun_dpad_down = "nul"
input_player15_gun_dpad_down_axis = "nul"
input_player15_gun_dpad_down_btn = "nul"
input_player15_gun_dpad_down_mbtn = "nul"
input_player15_gun_dpad_left = "nul"
input_player15_gun_dpad_left_axis = "nul"
input_player15_gun_dpad_left_btn = "nul"
input_player15_gun_dpad_left_mbtn = "nul"
input_player15_gun_dpad_right = "nul"
input_player15_gun_dpad_right_axis = "nul"
input_player15_gun_dpad_right_btn = "nul"
input_player15_gun_dpad_right_mbtn = "nul"
input_player15_gun_dpad_up = "nul"
input_player15_gun_dpad_up_axis = "nul"
input_player15_gun_dpad_up_btn = "nul"
input_player15_gun_dpad_up_mbtn = "nul"
input_player15_gun_offscreen_shot = "nul"
input_player15_gun_offscreen_shot_axis = "nul"
input_player15_gun_offscreen_shot_btn = "nul"
input_player15_gun_offscreen_shot_mbtn = "2"
input_player15_gun_select = "nul"
input_player15_gun_select_axis = "nul"
input_player15_gun_select_btn = "nul"
input_player15_gun_select_mbtn = "nul"
input_player15_gun_start = "nul"
input_player15_gun_start_axis = "nul"
input_player15_gun_start_btn = "nul"
input_player15_gun_start_mbtn = "nul"
input_player15_gun_trigger = "nul"
input_player15_gun_trigger_axis = "nul"
input_player15_gun_trigger_btn = "nul"
input_player15_gun_trigger_mbtn = "1"
input_player15_joypad_index = "14"
input_player15_l = "nul"
input_player15_l2 = "nul"
input_player15_l2_axis = "nul"
input_player15_l2_btn = "nul"
input_player15_l2_mbtn = "nul"
input_player15_l3 = "nul"
input_player15_l3_axis = "nul"
input_player15_l3_btn = "nul"
input_player15_l3_mbtn = "nul"
input_player15_l_axis = "nul"
input_player15_l_btn = "nul"
input_player15_l_mbtn = "nul"
input_player15_l_x_minus = "nul"
input_player15_l_x_minus_axis = "nul"
input_player15_l_x_minus_btn = "nul"
input_player15_l_x_minus_mbtn = "nul"
input_player15_l_x_plus = "nul"
input_player15_l_x_plus_axis = "nul"
input_player15_l_x_plus_btn = "nul"
input_player15_l_x_plus_mbtn = "nul"
input_player15_l_y_minus = "nul"
input_player15_l_y_minus_axis = "nul"
input_player15_l_y_minus_btn = "nul"
input_player15_l_y_minus_mbtn = "nul"
input_player15_l_y_plus = "nul"
input_player15_l_y_plus_axis = "nul"
input_player15_l_y_plus_btn = "nul"
input_player15_l_y_plus_mbtn = "nul"
input_player15_left = "nul"
input_player15_left_axis = "nul"
input_player15_left_btn = "nul"
input_player15_left_mbtn = "nul"
input_player15_mouse_index = "14"
input_player15_r = "nul"
input_player15_r2 = "nul"
input_player15_r2_axis = "nul"
input_player15_r2_btn = "nul"
input_player15_r2_mbtn = "nul"
input_player15_r3 = "nul"
input_player15_r3_axis = "nul"
input_player15_r3_btn = "nul"
input_player15_r3_mbtn = "nul"
input_player15_r_axis = "nul"
input_player15_r_btn = "nul"
input_player15_r_mbtn = "nul"
input_player15_r_x_minus = "nul"
input_player15_r_x_minus_axis = "nul"
input_player15_r_x_minus_btn = "nul"
input_player15_r_x_minus_mbtn = "nul"
input_player15_r_x_plus = "nul"
input_player15_r_x_plus_axis = "nul"
input_player15_r_x_plus_btn = "nul"
input_player15_r_x_plus_mbtn = "nul"
input_player15_r_y_minus = "nul"
input_player15_r_y_minus_axis = "nul"
input_player15_r_y_minus_btn = "nul"
input_player15_r_y_minus_mbtn = "nul"
input_player15_r_y_plus = "nul"
input_player15_r_y_plus_axis = "nul"
input_player15_r_y_plus_btn = "nul"
input_player15_r_y_plus_mbtn = "nul"
input_player15_reserved_device = ""
input_player15_right = "nul"
input_player15_right_axis = "nul"
input_player15_right_btn = "nul"
input_player15_right_mbtn = "nul"
input_player15_select = "nul"
input_player15_select_axis = "nul"
input_player15_select_btn = "nul"
input_player15_select_mbtn = "nul"
input_player15_start = "nul"
input_player15_start_axis = "nul"
input_player15_start_btn = "nul"
input_player15_start_mbtn = "nul"
input_player15_turbo = "nul"
input_player15_turbo_axis = "nul"
input_player15_turbo_btn = "nul"
input_player15_turbo_mbtn = "nul"
input_player15_up = "nul"
input_player15_up_axis = "nul"
input_player15_up_btn = "nul"
input_player15_up_mbtn = "nul"
input_player15_x = "nul"
input_player15_x_axis = "nul"
input_player15_x_btn = "nul"
input_player15_x_mbtn = "nul"
input_player15_y = "nul"
input_player15_y_axis = "nul"
input_player15_y_btn = "nul"
input_player15_y_mbtn = "nul"
input_player16_a = "nul"
input_player16_a_axis = "nul"
input_player16_a_btn = "nul"
input_player16_a_mbtn = "nul"
input_player16_analog_dpad_mode = "0"
input_player16_b = "nul"
input_player16_b_axis = "nul"
input_player16_b_btn = "nul"
input_player16_b_mbtn = "nul"
input_player16_device_reservation_type = "0"
input_player16_down = "nul"
input_player16_down_axis = "nul"
input_player16_down_btn = "nul"
input_player16_down_mbtn = "nul"
input_player16_gun_aux_a = "nul"
input_player16_gun_aux_a_axis = "nul"
input_player16_gun_aux_a_btn = "nul"
input_player16_gun_aux_a_mbtn = "nul"
input_player16_gun_aux_b = "nul"
input_player16_gun_aux_b_axis = "nul"
input_player16_gun_aux_b_btn = "nul"
input_player16_gun_aux_b_mbtn = "nul"
input_player16_gun_aux_c = "nul"
input_player16_gun_aux_c_axis = "nul"
input_player16_gun_aux_c_btn = "nul"
input_player16_gun_aux_c_mbtn = "nul"
input_player16_gun_dpad_down = "nul"
input_player16_gun_dpad_down_axis = "nul"
input_player16_gun_dpad_down_btn = "nul"
input_player16_gun_dpad_down_mbtn = "nul"
input_player16_gun_dpad_left = "nul"
input_player16_gun_dpad_left_axis = "nul"
input_player16_gun_dpad_left_btn = "nul"
input_player16_gun_dpad_left_mbtn = "nul"
input_player16_gun_dpad_right = "nul"
input_player16_gun_dpad_right_axis = "nul"
input_player16_gun_dpad_right_btn = "nul"
input_player16_gun_dpad_right_mbtn = "nul"
input_player16_gun_dpad_up = "nul"
input_player16_gun_dpad_up_axis = "nul"
input_player16_gun_dpad_up_btn = "nul"
input_player16_gun_dpad_up_mbtn = "nul"
input_player16_gun_offscreen_shot = "nul"
input_player16_gun_offscreen_shot_axis = "nul"
input_player16_gun_offscreen_shot_btn = "nul"
input_player16_gun_offscreen_shot_mbtn = "2"
input_player16_gun_select = "nul"
input_player16_gun_select_axis = "nul"
input_player16_gun_select_btn = "nul"
input_player16_gun_select_mbtn = "nul"
input_player16_gun_start = "nul"
input_player16_gun_start_axis = "nul"
input_player16_gun_start_btn = "nul"
input_player16_gun_start_mbtn = "nul"
input_player16_gun_trigger = "nul"
input_player16_gun_trigger_axis = "nul"
input_player16_gun_trigger_btn = "nul"
input_player16_gun_trigger_mbtn = "1"
input_player16_joypad_index = "15"
input_player16_l = "nul"
input_player16_l2 = "nul"
input_player16_l2_axis = "nul"
input_player16_l2_btn = "nul"
input_player16_l2_mbtn = "nul"
input_player16_l3 = "nul"
input_player16_l3_axis = "nul"
input_player16_l3_btn = "nul"
input_player16_l3_mbtn = "nul"
input_player16_l_axis = "nul"
input_player16_l_btn = "nul"
input_player16_l_mbtn = "nul"
input_player16_l_x_minus = "nul"
input_player16_l_x_minus_axis = "nul"
input_player16_l_x_minus_btn = "nul"
input_player16_l_x_minus_mbtn = "nul"
input_player16_l_x_plus = "nul"
input_player16_l_x_plus_axis = "nul"
input_player16_l_x_plus_btn = "nul"
input_player16_l_x_plus_mbtn = "nul"
input_player16_l_y_minus = "nul"
input_player16_l_y_minus_axis = "nul"
input_player16_l_y_minus_btn = "nul"
input_player16_l_y_minus_mbtn = "nul"
input_player16_l_y_plus = "nul"
input_player16_l_y_plus_axis = "nul"
input_player16_l_y_plus_btn = "nul"
input_player16_l_y_plus_mbtn = "nul"
input_player16_left = "nul"
input_player16_left_axis = "nul"
input_player16_left_btn = "nul"
input_player16_left_mbtn = "nul"
input_player16_mouse_index = "15"
input_player16_r = "nul"
input_player16_r2 = "nul"
input_player16_r2_axis = "nul"
input_player16_r2_btn = "nul"
input_player16_r2_mbtn = "nul"
input_player16_r3 = "nul"
input_player16_r3_axis = "nul"
input_player16_r3_btn = "nul"
input_player16_r3_mbtn = "nul"
input_player16_r_axis = "nul"
input_player16_r_btn = "nul"
input_player16_r_mbtn = "nul"
input_player16_r_x_minus = "nul"
input_player16_r_x_minus_axis = "nul"
input_player16_r_x_minus_btn = "nul"
input_player16_r_x_minus_mbtn = "nul"
input_player16_r_x_plus = "nul"
input_player16_r_x_plus_axis = "nul"
input_player16_r_x_plus_btn = "nul"
input_player16_r_x_plus_mbtn = "nul"
input_player16_r_y_minus = "nul"
input_player16_r_y_minus_axis = "nul"
input_player16_r_y_minus_btn = "nul"
input_player16_r_y_minus_mbtn = "nul"
input_player16_r_y_plus = "nul"
input_player16_r_y_plus_axis = "nul"
input_player16_r_y_plus_btn = "nul"
input_player16_r_y_plus_mbtn = "nul"
input_player16_reserved_device = ""
input_player16_right = "nul"
input_player16_right_axis = "nul"
input_player16_right_btn = "nul"
input_player16_right_mbtn = "nul"
input_player16_select = "nul"
input_player16_select_axis = "nul"
input_player16_select_btn = "nul"
input_player16_select_mbtn = "nul"
input_player16_start = "nul"
input_player16_start_axis = "nul"
input_player16_start_btn = "nul"
input_player16_start_mbtn = "nul"
input_player16_turbo = "nul"
input_player16_turbo_axis = "nul"
input_player16_turbo_btn = "nul"
input_player16_turbo_mbtn = "nul"
input_player16_up = "nul"
input_player16_up_axis = "nul"
input_player16_up_btn = "nul"
input_player16_up_mbtn = "nul"
input_player16_x = "nul"
input_player16_x_axis = "nul"
input_player16_x_btn = "nul"
input_player16_x_mbtn = "nul"
input_player16_y = "nul"
input_player16_y_axis = "nul"
input_player16_y_btn = "nul"
input_player16_y_mbtn = "nul"
input_player1_a = "x"
input_player1_a_axis = "nul"
input_player1_a_btn = "1"
input_player1_a_mbtn = "nul"
input_player1_analog_dpad_mode = "1"
input_player1_b = "z"
input_player1_b_axis = "nul"
input_player1_b_btn = "0"
input_player1_b_mbtn = "nul"
input_player1_device_reservation_type = "0"
input_player1_down = "down"
input_player1_down_axis = "nul"
input_player1_down_btn = "h0down"
input_player1_down_mbtn = "nul"
input_player1_gun_aux_a = "nul"
input_player1_gun_aux_a_axis = "nul"
input_player1_gun_aux_a_btn = "nul"
input_player1_gun_aux_a_mbtn = "nul"
input_player1_gun_aux_b = "nul"
input_player1_gun_aux_b_axis = "nul"
input_player1_gun_aux_b_btn = "nul"
input_player1_gun_aux_b_mbtn = "nul"
input_player1_gun_aux_c = "nul"
input_player1_gun_aux_c_axis = "nul"
input_player1_gun_aux_c_btn = "nul"
input_player1_gun_aux_c_mbtn = "nul"
input_player1_gun_dpad_down = "nul"
input_player1_gun_dpad_down_axis = "nul"
input_player1_gun_dpad_down_btn = "nul"
input_player1_gun_dpad_down_mbtn = "nul"
input_player1_gun_dpad_left = "nul"
input_player1_gun_dpad_left_axis = "nul"
input_player1_gun_dpad_left_btn = "nul"
input_player1_gun_dpad_left_mbtn = "nul"
input_player1_gun_dpad_right = "nul"
input_player1_gun_dpad_right_axis = "nul"
input_player1_gun_dpad_right_btn = "nul"
input_player1_gun_dpad_right_mbtn = "nul"
input_player1_gun_dpad_up = "nul"
input_player1_gun_dpad_up_axis = "nul"
input_player1_gun_dpad_up_btn = "nul"
input_player1_gun_dpad_up_mbtn = "nul"
input_player1_gun_offscreen_shot = "nul"
input_player1_gun_offscreen_shot_axis = "nul"
input_player1_gun_offscreen_shot_btn = "nul"
input_player1_gun_offscreen_shot_mbtn = "2"
input_player1_gun_select = "nul"
input_player1_gun_select_axis = "nul"
input_player1_gun_select_btn = "nul"
input_player1_gun_select_mbtn = "nul"
input_player1_gun_start = "nul"
input_player1_gun_start_axis = "nul"
input_player1_gun_start_btn = "nul"
input_player1_gun_start_mbtn = "nul"
input_player1_gun_trigger = "nul"
input_player1_gun_trigger_axis = "nul"
input_player1_gun_trigger_btn = "nul"
input_player1_gun_trigger_mbtn = "1"
input_player1_joypad_index = "0"
input_player1_l = "q"
input_player1_l2 = "nul"
input_player1_l2_axis = "+2"
input_player1_l2_btn = "nul"
input_player1_l2_mbtn = "nul"
input_player1_l3 = "nul"
input_player1_l3_axis = "nul"
input_player1_l3_btn = "11"
input_player1_l3_mbtn = "nul"
input_player1_l_axis = "nul"
input_player1_l_btn = "4"
input_player1_l_mbtn = "nul"
input_player1_l_x_minus = "nul"
input_player1_l_x_minus_axis = "-0"
input_player1_l_x_minus_btn = "nul"
input_player1_l_x_minus_mbtn = "nul"
input_player1_l_x_plus = "nul"
input_player1_l_x_plus_axis = "+0"
input_player1_l_x_plus_btn = "nul"
input_player1_l_x_plus_mbtn = "nul"
input_player1_l_y_minus = "nul"
input_player1_l_y_minus_axis = "-1"
input_player1_l_y_minus_btn = "nul"
input_player1_l_y_minus_mbtn = "nul"
input_player1_l_y_plus = "nul"
input_player1_l_y_plus_axis = "+1"
input_player1_l_y_plus_btn = "nul"
input_player1_l_y_plus_mbtn = "nul"
input_player1_left = "left"
input_player1_left_axis = "nul"
input_player1_left_btn = "h0left"
input_player1_left_mbtn = "nul"
input_player1_mouse_index = "0"
input_player1_r = "w"
input_player1_r2 = "nul"
input_player1_r2_axis = "+5"
input_player1_r2_btn = "nul"
input_player1_r2_mbtn = "nul"
input_player1_r3 = "nul"
input_player1_r3_axis = "nul"
input_player1_r3_btn = "12"
input_player1_r3_mbtn = "nul"
input_player1_r_axis = "nul"
input_player1_r_btn = "5"
input_player1_r_mbtn = "nul"
input_player1_r_x_minus = "nul"
input_player1_r_x_minus_axis = "-3"
input_player1_r_x_minus_btn = "nul"
input_player1_r_x_minus_mbtn = "nul"
input_player1_r_x_plus = "nul"
input_player1_r_x_plus_axis = "+3"
input_player1_r_x_plus_btn = "nul"
input_player1_r_x_plus_mbtn = "nul"
input_player1_r_y_minus = "nul"
input_player1_r_y_minus_axis = "-4"
input_player1_r_y_minus_btn = "nul"
input_player1_r_y_minus_mbtn = "nul"
input_player1_r_y_plus = "nul"
input_player1_r_y_plus_axis = "+4"
input_player1_r_y_plus_btn = "nul"
input_player1_r_y_plus_mbtn = "nul"
input_player1_reserved_device = ""
input_player1_right = "right"
input_player1_right_axis = "nul"
input_player1_right_btn = "h0right"
input_player1_right_mbtn = "nul"
input_player1_select = "rshift"
input_player1_select_axis = "nul"
input_player1_select_btn = "8"
input_player1_select_mbtn = "nul"
input_player1_start = "enter"
input_player1_start_axis = "nul"
input_player1_start_btn = "9"
input_player1_start_mbtn = "nul"
input_player1_turbo = "nul"
input_player1_turbo_axis = "nul"
input_player1_turbo_btn = "nul"
input_player1_turbo_mbtn = "nul"
input_player1_up = "up"
input_player1_up_axis = "nul"
input_player1_up_btn = "h0up"
input_player1_up_mbtn = "nul"
input_player1_x = "s"
input_player1_x_axis = "nul"
input_player1_x_btn = "2"
input_player1_x_mbtn = "nul"
input_player1_y = "a"
input_player1_y_axis = "nul"
input_player1_y_btn = "3"
input_player1_y_mbtn = "nul"
input_player2_a = "nul"
input_player2_a_axis = "nul"
input_player2_a_btn = "1"
input_player2_a_mbtn = "nul"
input_player2_analog_dpad_mode = "0"
input_player2_b = "nul"
input_player2_b_axis = "nul"
input_player2_b_btn = "0"
input_player2_b_mbtn = "nul"
input_player2_device_reservation_type = "0"
input_player2_down = "nul"
input_player2_down_axis = "nul"
input_player2_down_btn = "h0down"
input_player2_down_mbtn = "nul"
input_player2_gun_aux_a = "nul"
input_player2_gun_aux_a_axis = "nul"
input_player2_gun_aux_a_btn = "nul"
input_player2_gun_aux_a_mbtn = "nul"
input_player2_gun_aux_b = "nul"
input_player2_gun_aux_b_axis = "nul"
input_player2_gun_aux_b_btn = "nul"
input_player2_gun_aux_b_mbtn = "nul"
input_player2_gun_aux_c = "nul"
input_player2_gun_aux_c_axis = "nul"
input_player2_gun_aux_c_btn = "nul"
input_player2_gun_aux_c_mbtn = "nul"
input_player2_gun_dpad_down = "nul"
input_player2_gun_dpad_down_axis = "nul"
input_player2_gun_dpad_down_btn = "nul"
input_player2_gun_dpad_down_mbtn = "nul"
input_player2_gun_dpad_left = "nul"
input_player2_gun_dpad_left_axis = "nul"
input_player2_gun_dpad_left_btn = "nul"
input_player2_gun_dpad_left_mbtn = "nul"
input_player2_gun_dpad_right = "nul"
input_player2_gun_dpad_right_axis = "nul"
input_player2_gun_dpad_right_btn = "nul"
input_player2_gun_dpad_right_mbtn = "nul"
input_player2_gun_dpad_up = "nul"
input_player2_gun_dpad_up_axis = "nul"
input_player2_gun_dpad_up_btn = "nul"
input_player2_gun_dpad_up_mbtn = "nul"
input_player2_gun_offscreen_shot = "nul"
input_player2_gun_offscreen_shot_axis = "nul"
input_player2_gun_offscreen_shot_btn = "nul"
input_player2_gun_offscreen_shot_mbtn = "2"
input_player2_gun_select = "nul"
input_player2_gun_select_axis = "nul"
input_player2_gun_select_btn = "nul"
input_player2_gun_select_mbtn = "nul"
input_player2_gun_start = "nul"
input_player2_gun_start_axis = "nul"
input_player2_gun_start_btn = "nul"
input_player2_gun_start_mbtn = "nul"
input_player2_gun_trigger = "nul"
input_player2_gun_trigger_axis = "nul"
input_player2_gun_trigger_btn = "nul"
input_player2_gun_trigger_mbtn = "1"
input_player2_joypad_index = "1"
input_player2_l = "nul"
input_player2_l2 = "nul"
input_player2_l2_axis = "nul"
input_player2_l2_btn = "6"
input_player2_l2_mbtn = "nul"
input_player2_l3 = "nul"
input_player2_l3_axis = "nul"
input_player2_l3_btn = "11"
input_player2_l3_mbtn = "nul"
input_player2_l_axis = "nul"
input_player2_l_btn = "4"
input_player2_l_mbtn = "nul"
input_player2_l_x_minus = "nul"
input_player2_l_x_minus_axis = "-0"
input_player2_l_x_minus_btn = "nul"
input_player2_l_x_minus_mbtn = "nul"
input_player2_l_x_plus = "nul"
input_player2_l_x_plus_axis = "+0"
input_player2_l_x_plus_btn = "nul"
input_player2_l_x_plus_mbtn = "nul"
input_player2_l_y_minus = "nul"
input_player2_l_y_minus_axis = "-1"
input_player2_l_y_minus_btn = "nul"
input_player2_l_y_minus_mbtn = "nul"
input_player2_l_y_plus = "nul"
input_player2_l_y_plus_axis = "+1"
input_player2_l_y_plus_btn = "nul"
input_player2_l_y_plus_mbtn = "nul"
input_player2_left = "nul"
input_player2_left_axis = "nul"
input_player2_left_btn = "h0left"
input_player2_left_mbtn = "nul"
input_player2_mouse_index = "1"
input_player2_r = "nul"
input_player2_r2 = "nul"
input_player2_r2_axis = "nul"
input_player2_r2_btn = "7"
input_player2_r2_mbtn = "nul"
input_player2_r3 = "nul"
input_player2_r3_axis = "nul"
input_player2_r3_btn = "12"
input_player2_r3_mbtn = "nul"
input_player2_r_axis = "nul"
input_player2_r_btn = "5"
input_player2_r_mbtn = "nul"
input_player2_r_x_minus = "nul"
input_player2_r_x_minus_axis = "-3"
input_player2_r_x_minus_btn = "nul"
input_player2_r_x_minus_mbtn = "nul"
input_player2_r_x_plus = "nul"
input_player2_r_x_plus_axis = "+3"
input_player2_r_x_plus_btn = "nul"
input_player2_r_x_plus_mbtn = "nul"
input_player2_r_y_minus = "nul"
input_player2_r_y_minus_axis = "-4"
input_player2_r_y_minus_btn = "nul"
input_player2_r_y_minus_mbtn = "nul"
input_player2_r_y_plus = "nul"
input_player2_r_y_plus_axis = "+4"
input_player2_r_y_plus_btn = "nul"
input_player2_r_y_plus_mbtn = "nul"
input_player2_reserved_device = ""
input_player2_right = "nul"
input_player2_right_axis = "nul"
input_player2_right_btn = "h0right"
input_player2_right_mbtn = "nul"
input_player2_select = "nul"
input_player2_select_axis = "nul"
input_player2_select_btn = "8"
input_player2_select_mbtn = "nul"
input_player2_start = "nul"
input_player2_start_axis = "nul"
input_player2_start_btn = "9"
input_player2_start_mbtn = "nul"
input_player2_turbo = "nul"
input_player2_turbo_axis = "nul"
input_player2_turbo_btn = "nul"
input_player2_turbo_mbtn = "nul"
input_player2_up = "nul"
input_player2_up_axis = "nul"
input_player2_up_btn = "h0up"
input_player2_up_mbtn = "nul"
input_player2_x = "nul"
input_player2_x_axis = "nul"
input_player2_x_btn = "2"
input_player2_x_mbtn = "nul"
input_player2_y = "nul"
input_player2_y_axis = "nul"
input_player2_y_btn = "3"
input_player2_y_mbtn = "nul"
input_player3_a = "nul"
input_player3_a_axis = "nul"
input_player3_a_btn = "1"
input_player3_a_mbtn = "nul"
input_player3_analog_dpad_mode = "0"
input_player3_b = "nul"
input_player3_b_axis = "nul"
input_player3_b_btn = "0"
input_player3_b_mbtn = "nul"
input_player3_device_reservation_type = "0"
input_player3_down = "nul"
input_player3_down_axis = "nul"
input_player3_down_btn = "h0down"
input_player3_down_mbtn = "nul"
input_player3_gun_aux_a = "nul"
input_player3_gun_aux_a_axis = "nul"
input_player3_gun_aux_a_btn = "nul"
input_player3_gun_aux_a_mbtn = "nul"
input_player3_gun_aux_b = "nul"
input_player3_gun_aux_b_axis = "nul"
input_player3_gun_aux_b_btn = "nul"
input_player3_gun_aux_b_mbtn = "nul"
input_player3_gun_aux_c = "nul"
input_player3_gun_aux_c_axis = "nul"
input_player3_gun_aux_c_btn = "nul"
input_player3_gun_aux_c_mbtn = "nul"
input_player3_gun_dpad_down = "nul"
input_player3_gun_dpad_down_axis = "nul"
input_player3_gun_dpad_down_btn = "nul"
input_player3_gun_dpad_down_mbtn = "nul"
input_player3_gun_dpad_left = "nul"
input_player3_gun_dpad_left_axis = "nul"
input_player3_gun_dpad_left_btn = "nul"
input_player3_gun_dpad_left_mbtn = "nul"
input_player3_gun_dpad_right = "nul"
input_player3_gun_dpad_right_axis = "nul"
input_player3_gun_dpad_right_btn = "nul"
input_player3_gun_dpad_right_mbtn = "nul"
input_player3_gun_dpad_up = "nul"
input_player3_gun_dpad_up_axis = "nul"
input_player3_gun_dpad_up_btn = "nul"
input_player3_gun_dpad_up_mbtn = "nul"
input_player3_gun_offscreen_shot = "nul"
input_player3_gun_offscreen_shot_axis = "nul"
input_player3_gun_offscreen_shot_btn = "nul"
input_player3_gun_offscreen_shot_mbtn = "2"
input_player3_gun_select = "nul"
input_player3_gun_select_axis = "nul"
input_player3_gun_select_btn = "nul"
input_player3_gun_select_mbtn = "nul"
input_player3_gun_start = "nul"
input_player3_gun_start_axis = "nul"
input_player3_gun_start_btn = "nul"
input_player3_gun_start_mbtn = "nul"
input_player3_gun_trigger = "nul"
input_player3_gun_trigger_axis = "nul"
input_player3_gun_trigger_btn = "nul"
input_player3_gun_trigger_mbtn = "1"
input_player3_joypad_index = "2"
input_player3_l = "nul"
input_player3_l2 = "nul"
input_player3_l2_axis = "nul"
input_player3_l2_btn = "6"
input_player3_l2_mbtn = "nul"
input_player3_l3 = "nul"
input_player3_l3_axis = "nul"
input_player3_l3_btn = "11"
input_player3_l3_mbtn = "nul"
input_player3_l_axis = "nul"
input_player3_l_btn = "4"
input_player3_l_mbtn = "nul"
input_player3_l_x_minus = "nul"
input_player3_l_x_minus_axis = "-0"
input_player3_l_x_minus_btn = "nul"
input_player3_l_x_minus_mbtn = "nul"
input_player3_l_x_plus = "nul"
input_player3_l_x_plus_axis = "+0"
input_player3_l_x_plus_btn = "nul"
input_player3_l_x_plus_mbtn = "nul"
input_player3_l_y_minus = "nul"
input_player3_l_y_minus_axis = "-1"
input_player3_l_y_minus_btn = "nul"
input_player3_l_y_minus_mbtn = "nul"
input_player3_l_y_plus = "nul"
input_player3_l_y_plus_axis = "+1"
input_player3_l_y_plus_btn = "nul"
input_player3_l_y_plus_mbtn = "nul"
input_player3_left = "nul"
input_player3_left_axis = "nul"
input_player3_left_btn = "h0left"
input_player3_left_mbtn = "nul"
input_player3_mouse_index = "2"
input_player3_r = "nul"
input_player3_r2 = "nul"
input_player3_r2_axis = "nul"
input_player3_r2_btn = "7"
input_player3_r2_mbtn = "nul"
input_player3_r3 = "nul"
input_player3_r3_axis = "nul"
input_player3_r3_btn = "12"
input_player3_r3_mbtn = "nul"
input_player3_r_axis = "nul"
input_player3_r_btn = "5"
input_player3_r_mbtn = "nul"
input_player3_r_x_minus = "nul"
input_player3_r_x_minus_axis = "-3"
input_player3_r_x_minus_btn = "nul"
input_player3_r_x_minus_mbtn = "nul"
input_player3_r_x_plus = "nul"
input_player3_r_x_plus_axis = "+3"
input_player3_r_x_plus_btn = "nul"
input_player3_r_x_plus_mbtn = "nul"
input_player3_r_y_minus = "nul"
input_player3_r_y_minus_axis = "-4"
input_player3_r_y_minus_btn = "nul"
input_player3_r_y_minus_mbtn = "nul"
input_player3_r_y_plus = "nul"
input_player3_r_y_plus_axis = "+4"
input_player3_r_y_plus_btn = "nul"
input_player3_r_y_plus_mbtn = "nul"
input_player3_reserved_device = ""
input_player3_right = "nul"
input_player3_right_axis = "nul"
input_player3_right_btn = "h0right"
input_player3_right_mbtn = "nul"
input_player3_select = "nul"
input_player3_select_axis = "nul"
input_player3_select_btn = "8"
input_player3_select_mbtn = "nul"
input_player3_start = "nul"
input_player3_start_axis = "nul"
input_player3_start_btn = "9"
input_player3_start_mbtn = "nul"
input_player3_turbo = "nul"
input_player3_turbo_axis = "nul"
input_player3_turbo_btn = "nul"
input_player3_turbo_mbtn = "nul"
input_player3_up = "nul"
input_player3_up_axis = "nul"
input_player3_up_btn = "h0up"
input_player3_up_mbtn = "nul"
input_player3_x = "nul"
input_player3_x_axis = "nul"
input_player3_x_btn = "2"
input_player3_x_mbtn = "nul"
input_player3_y = "nul"
input_player3_y_axis = "nul"
input_player3_y_btn = "3"
input_player3_y_mbtn = "nul"
input_player4_a = "nul"
input_player4_a_axis = "nul"
input_player4_a_btn = "nul"
input_player4_a_mbtn = "nul"
input_player4_analog_dpad_mode = "0"
input_player4_b = "nul"
input_player4_b_axis = "nul"
input_player4_b_btn = "nul"
input_player4_b_mbtn = "nul"
input_player4_device_reservation_type = "0"
input_player4_down = "nul"
input_player4_down_axis = "nul"
input_player4_down_btn = "nul"
input_player4_down_mbtn = "nul"
input_player4_gun_aux_a = "nul"
input_player4_gun_aux_a_axis = "nul"
input_player4_gun_aux_a_btn = "nul"
input_player4_gun_aux_a_mbtn = "nul"
input_player4_gun_aux_b = "nul"
input_player4_gun_aux_b_axis = "nul"
input_player4_gun_aux_b_btn = "nul"
input_player4_gun_aux_b_mbtn = "nul"
input_player4_gun_aux_c = "nul"
input_player4_gun_aux_c_axis = "nul"
input_player4_gun_aux_c_btn = "nul"
input_player4_gun_aux_c_mbtn = "nul"
input_player4_gun_dpad_down = "nul"
input_player4_gun_dpad_down_axis = "nul"
input_player4_gun_dpad_down_btn = "nul"
input_player4_gun_dpad_down_mbtn = "nul"
input_player4_gun_dpad_left = "nul"
input_player4_gun_dpad_left_axis = "nul"
input_player4_gun_dpad_left_btn = "nul"
input_player4_gun_dpad_left_mbtn = "nul"
input_player4_gun_dpad_right = "nul"
input_player4_gun_dpad_right_axis = "nul"
input_player4_gun_dpad_right_btn = "nul"
input_player4_gun_dpad_right_mbtn = "nul"
input_player4_gun_dpad_up = "nul"
input_player4_gun_dpad_up_axis = "nul"
input_player4_gun_dpad_up_btn = "nul"
input_player4_gun_dpad_up_mbtn = "nul"
input_player4_gun_offscreen_shot = "nul"
input_player4_gun_offscreen_shot_axis = "nul"
input_player4_gun_offscreen_shot_btn = "nul"
input_player4_gun_offscreen_shot_mbtn = "2"
input_player4_gun_select = "nul"
input_player4_gun_select_axis = "nul"
input_player4_gun_select_btn = "nul"
input_player4_gun_select_mbtn = "nul"
input_player4_gun_start = "nul"
input_player4_gun_start_axis = "nul"
input_player4_gun_start_btn = "nul"
input_player4_gun_start_mbtn = "nul"
input_player4_gun_trigger = "nul"
input_player4_gun_trigger_axis = "nul"
input_player4_gun_trigger_btn = "nul"
input_player4_gun_trigger_mbtn = "1"
input_player4_joypad_index = "3"
input_player4_l = "nul"
input_player4_l2 = "nul"
input_player4_l2_axis = "nul"
input_player4_l2_btn = "nul"
input_player4_l2_mbtn = "nul"
input_player4_l3 = "nul"
input_player4_l3_axis = "nul"
input_player4_l3_btn = "nul"
input_player4_l3_mbtn = "nul"
input_player4_l_axis = "nul"
input_player4_l_btn = "nul"
input_player4_l_mbtn = "nul"
input_player4_l_x_minus = "nul"
input_player4_l_x_minus_axis = "nul"
input_player4_l_x_minus_btn = "nul"
input_player4_l_x_minus_mbtn = "nul"
input_player4_l_x_plus = "nul"
input_player4_l_x_plus_axis = "nul"
input_player4_l_x_plus_btn = "nul"
input_player4_l_x_plus_mbtn = "nul"
input_player4_l_y_minus = "nul"
input_player4_l_y_minus_axis = "nul"
input_player4_l_y_minus_btn = "nul"
input_player4_l_y_minus_mbtn = "nul"
input_player4_l_y_plus = "nul"
input_player4_l_y_plus_axis = "nul"
input_player4_l_y_plus_btn = "nul"
input_player4_l_y_plus_mbtn = "nul"
input_player4_left = "nul"
input_player4_left_axis = "nul"
input_player4_left_btn = "nul"
input_player4_left_mbtn = "nul"
input_player4_mouse_index = "3"
input_player4_r = "nul"
input_player4_r2 = "nul"
input_player4_r2_axis = "nul"
input_player4_r2_btn = "nul"
input_player4_r2_mbtn = "nul"
input_player4_r3 = "nul"
input_player4_r3_axis = "nul"
input_player4_r3_btn = "nul"
input_player4_r3_mbtn = "nul"
input_player4_r_axis = "nul"
input_player4_r_btn = "nul"
input_player4_r_mbtn = "nul"
input_player4_r_x_minus = "nul"
input_player4_r_x_minus_axis = "nul"
input_player4_r_x_minus_btn = "nul"
input_player4_r_x_minus_mbtn = "nul"
input_player4_r_x_plus = "nul"
input_player4_r_x_plus_axis = "nul"
input_player4_r_x_plus_btn = "nul"
input_player4_r_x_plus_mbtn = "nul"
input_player4_r_y_minus = "nul"
input_player4_r_y_minus_axis = "nul"
input_player4_r_y_minus_btn = "nul"
input_player4_r_y_minus_mbtn = "nul"
input_player4_r_y_plus = "nul"
input_player4_r_y_plus_axis = "nul"
input_player4_r_y_plus_btn = "nul"
input_player4_r_y_plus_mbtn = "nul"
input_player4_reserved_device = ""
input_player4_right = "nul"
input_player4_right_axis = "nul"
input_player4_right_btn = "nul"
input_player4_right_mbtn = "nul"
input_player4_select = "nul"
input_player4_select_axis = "nul"
input_player4_select_btn = "nul"
input_player4_select_mbtn = "nul"
input_player4_start = "nul"
input_player4_start_axis = "nul"
input_player4_start_btn = "nul"
input_player4_start_mbtn = "nul"
input_player4_turbo = "nul"
input_player4_turbo_axis = "nul"
input_player4_turbo_btn = "nul"
input_player4_turbo_mbtn = "nul"
input_player4_up = "nul"
input_player4_up_axis = "nul"
input_player4_up_btn = "nul"
input_player4_up_mbtn = "nul"
input_player4_x = "nul"
input_player4_x_axis = "nul"
input_player4_x_btn = "nul"
input_player4_x_mbtn = "nul"
input_player4_y = "nul"
input_player4_y_axis = "nul"
input_player4_y_btn = "nul"
input_player4_y_mbtn = "nul"
input_player5_a = "nul"
input_player5_a_axis = "nul"
input_player5_a_btn = "nul"
input_player5_a_mbtn = "nul"
input_player5_analog_dpad_mode = "0"
input_player5_b = "nul"
input_player5_b_axis = "nul"
input_player5_b_btn = "nul"
input_player5_b_mbtn = "nul"
input_player5_device_reservation_type = "0"
input_player5_down = "nul"
input_player5_down_axis = "nul"
input_player5_down_btn = "nul"
input_player5_down_mbtn = "nul"
input_player5_gun_aux_a = "nul"
input_player5_gun_aux_a_axis = "nul"
input_player5_gun_aux_a_btn = "nul"
input_player5_gun_aux_a_mbtn = "nul"
input_player5_gun_aux_b = "nul"
input_player5_gun_aux_b_axis = "nul"
input_player5_gun_aux_b_btn = "nul"
input_player5_gun_aux_b_mbtn = "nul"
input_player5_gun_aux_c = "nul"
input_player5_gun_aux_c_axis = "nul"
input_player5_gun_aux_c_btn = "nul"
input_player5_gun_aux_c_mbtn = "nul"
input_player5_gun_dpad_down = "nul"
input_player5_gun_dpad_down_axis = "nul"
input_player5_gun_dpad_down_btn = "nul"
input_player5_gun_dpad_down_mbtn = "nul"
input_player5_gun_dpad_left = "nul"
input_player5_gun_dpad_left_axis = "nul"
input_player5_gun_dpad_left_btn = "nul"
input_player5_gun_dpad_left_mbtn = "nul"
input_player5_gun_dpad_right = "nul"
input_player5_gun_dpad_right_axis = "nul"
input_player5_gun_dpad_right_btn = "nul"
input_player5_gun_dpad_right_mbtn = "nul"
input_player5_gun_dpad_up = "nul"
input_player5_gun_dpad_up_axis = "nul"
input_player5_gun_dpad_up_btn = "nul"
input_player5_gun_dpad_up_mbtn = "nul"
input_player5_gun_offscreen_shot = "nul"
input_player5_gun_offscreen_shot_axis = "nul"
input_player5_gun_offscreen_shot_btn = "nul"
input_player5_gun_offscreen_shot_mbtn = "2"
input_player5_gun_select = "nul"
input_player5_gun_select_axis = "nul"
input_player5_gun_select_btn = "nul"
input_player5_gun_select_mbtn = "nul"
input_player5_gun_start = "nul"
input_player5_gun_start_axis = "nul"
input_player5_gun_start_btn = "nul"
input_player5_gun_start_mbtn = "nul"
input_player5_gun_trigger = "nul"
input_player5_gun_trigger_axis = "nul"
input_player5_gun_trigger_btn = "nul"
input_player5_gun_trigger_mbtn = "1"
input_player5_joypad_index = "4"
input_player5_l = "nul"
input_player5_l2 = "nul"
input_player5_l2_axis = "nul"
input_player5_l2_btn = "nul"
input_player5_l2_mbtn = "nul"
input_player5_l3 = "nul"
input_player5_l3_axis = "nul"
input_player5_l3_btn = "nul"
input_player5_l3_mbtn = "nul"
input_player5_l_axis = "nul"
input_player5_l_btn = "nul"
input_player5_l_mbtn = "nul"
input_player5_l_x_minus = "nul"
input_player5_l_x_minus_axis = "nul"
input_player5_l_x_minus_btn = "nul"
input_player5_l_x_minus_mbtn = "nul"
input_player5_l_x_plus = "nul"
input_player5_l_x_plus_axis = "nul"
input_player5_l_x_plus_btn = "nul"
input_player5_l_x_plus_mbtn = "nul"
input_player5_l_y_minus = "nul"
input_player5_l_y_minus_axis = "nul"
input_player5_l_y_minus_btn = "nul"
input_player5_l_y_minus_mbtn = "nul"
input_player5_l_y_plus = "nul"
input_player5_l_y_plus_axis = "nul"
input_player5_l_y_plus_btn = "nul"
input_player5_l_y_plus_mbtn = "nul"
input_player5_left = "nul"
input_player5_left_axis = "nul"
input_player5_left_btn = "nul"
input_player5_left_mbtn = "nul"
input_player5_mouse_index = "4"
input_player5_r = "nul"
input_player5_r2 = "nul"
input_player5_r2_axis = "nul"
input_player5_r2_btn = "nul"
input_player5_r2_mbtn = "nul"
input_player5_r3 = "nul"
input_player5_r3_axis = "nul"
input_player5_r3_btn = "nul"
input_player5_r3_mbtn = "nul"
input_player5_r_axis = "nul"
input_player5_r_btn = "nul"
input_player5_r_mbtn = "nul"
input_player5_r_x_minus = "nul"
input_player5_r_x_minus_axis = "nul"
input_player5_r_x_minus_btn = "nul"
input_player5_r_x_minus_mbtn = "nul"
input_player5_r_x_plus = "nul"
input_player5_r_x_plus_axis = "nul"
input_player5_r_x_plus_btn = "nul"
input_player5_r_x_plus_mbtn = "nul"
input_player5_r_y_minus = "nul"
input_player5_r_y_minus_axis = "nul"
input_player5_r_y_minus_btn = "nul"
input_player5_r_y_minus_mbtn = "nul"
input_player5_r_y_plus = "nul"
input_player5_r_y_plus_axis = "nul"
input_player5_r_y_plus_btn = "nul"
input_player5_r_y_plus_mbtn = "nul"
input_player5_reserved_device = ""
input_player5_right = "nul"
input_player5_right_axis = "nul"
input_player5_right_btn = "nul"
input_player5_right_mbtn = "nul"
input_player5_select = "nul"
input_player5_select_axis = "nul"
input_player5_select_btn = "nul"
input_player5_select_mbtn = "nul"
input_player5_start = "nul"
input_player5_start_axis = "nul"
input_player5_start_btn = "nul"
input_player5_start_mbtn = "nul"
input_player5_turbo = "nul"
input_player5_turbo_axis = "nul"
input_player5_turbo_btn = "nul"
input_player5_turbo_mbtn = "nul"
input_player5_up = "nul"
input_player5_up_axis = "nul"
input_player5_up_btn = "nul"
input_player5_up_mbtn = "nul"
input_player5_x = "nul"
input_player5_x_axis = "nul"
input_player5_x_btn = "nul"
input_player5_x_mbtn = "nul"
input_player5_y = "nul"
input_player5_y_axis = "nul"
input_player5_y_btn = "nul"
input_player5_y_mbtn = "nul"
input_player6_a = "nul"
input_player6_a_axis = "nul"
input_player6_a_btn = "nul"
input_player6_a_mbtn = "nul"
input_player6_analog_dpad_mode = "0"
input_player6_b = "nul"
input_player6_b_axis = "nul"
input_player6_b_btn = "nul"
input_player6_b_mbtn = "nul"
input_player6_device_reservation_type = "0"
input_player6_down = "nul"
input_player6_down_axis = "nul"
input_player6_down_btn = "nul"
input_player6_down_mbtn = "nul"
input_player6_gun_aux_a = "nul"
input_player6_gun_aux_a_axis = "nul"
input_player6_gun_aux_a_btn = "nul"
input_player6_gun_aux_a_mbtn = "nul"
input_player6_gun_aux_b = "nul"
input_player6_gun_aux_b_axis = "nul"
input_player6_gun_aux_b_btn = "nul"
input_player6_gun_aux_b_mbtn = "nul"
input_player6_gun_aux_c = "nul"
input_player6_gun_aux_c_axis = "nul"
input_player6_gun_aux_c_btn = "nul"
input_player6_gun_aux_c_mbtn = "nul"
input_player6_gun_dpad_down = "nul"
input_player6_gun_dpad_down_axis = "nul"
input_player6_gun_dpad_down_btn = "nul"
input_player6_gun_dpad_down_mbtn = "nul"
input_player6_gun_dpad_left = "nul"
input_player6_gun_dpad_left_axis = "nul"
input_player6_gun_dpad_left_btn = "nul"
input_player6_gun_dpad_left_mbtn = "nul"
input_player6_gun_dpad_right = "nul"
input_player6_gun_dpad_right_axis = "nul"
input_player6_gun_dpad_right_btn = "nul"
input_player6_gun_dpad_right_mbtn = "nul"
input_player6_gun_dpad_up = "nul"
input_player6_gun_dpad_up_axis = "nul"
input_player6_gun_dpad_up_btn = "nul"
input_player6_gun_dpad_up_mbtn = "nul"
input_player6_gun_offscreen_shot = "nul"
input_player6_gun_offscreen_shot_axis = "nul"
input_player6_gun_offscreen_shot_btn = "nul"
input_player6_gun_offscreen_shot_mbtn = "2"
input_player6_gun_select = "nul"
input_player6_gun_select_axis = "nul"
input_player6_gun_select_btn = "nul"
input_player6_gun_select_mbtn = "nul"
input_player6_gun_start = "nul"
input_player6_gun_start_axis = "nul"
input_player6_gun_start_btn = "nul"
input_player6_gun_start_mbtn = "nul"
input_player6_gun_trigger = "nul"
input_player6_gun_trigger_axis = "nul"
input_player6_gun_trigger_btn = "nul"
input_player6_gun_trigger_mbtn = "1"
input_player6_joypad_index = "5"
input_player6_l = "nul"
input_player6_l2 = "nul"
input_player6_l2_axis = "nul"
input_player6_l2_btn = "nul"
input_player6_l2_mbtn = "nul"
input_player6_l3 = "nul"
input_player6_l3_axis = "nul"
input_player6_l3_btn = "nul"
input_player6_l3_mbtn = "nul"
input_player6_l_axis = "nul"
input_player6_l_btn = "nul"
input_player6_l_mbtn = "nul"
input_player6_l_x_minus = "nul"
input_player6_l_x_minus_axis = "nul"
input_player6_l_x_minus_btn = "nul"
input_player6_l_x_minus_mbtn = "nul"
input_player6_l_x_plus = "nul"
input_player6_l_x_plus_axis = "nul"
input_player6_l_x_plus_btn = "nul"
input_player6_l_x_plus_mbtn = "nul"
input_player6_l_y_minus = "nul"
input_player6_l_y_minus_axis = "nul"
input_player6_l_y_minus_btn = "nul"
input_player6_l_y_minus_mbtn = "nul"
input_player6_l_y_plus = "nul"
input_player6_l_y_plus_axis = "nul"
input_player6_l_y_plus_btn = "nul"
input_player6_l_y_plus_mbtn = "nul"
input_player6_left = "nul"
input_player6_left_axis = "nul"
input_player6_left_btn = "nul"
input_player6_left_mbtn = "nul"
input_player6_mouse_index = "5"
input_player6_r = "nul"
input_player6_r2 = "nul"
input_player6_r2_axis = "nul"
input_player6_r2_btn = "nul"
input_player6_r2_mbtn = "nul"
input_player6_r3 = "nul"
input_player6_r3_axis = "nul"
input_player6_r3_btn = "nul"
input_player6_r3_mbtn = "nul"
input_player6_r_axis = "nul"
input_player6_r_btn = "nul"
input_player6_r_mbtn = "nul"
input_player6_r_x_minus = "nul"
input_player6_r_x_minus_axis = "nul"
input_player6_r_x_minus_btn = "nul"
input_player6_r_x_minus_mbtn = "nul"
input_player6_r_x_plus = "nul"
input_player6_r_x_plus_axis = "nul"
input_player6_r_x_plus_btn = "nul"
input_player6_r_x_plus_mbtn = "nul"
input_player6_r_y_minus = "nul"
input_player6_r_y_minus_axis = "nul"
input_player6_r_y_minus_btn = "nul"
input_player6_r_y_minus_mbtn = "nul"
input_player6_r_y_plus = "nul"
input_player6_r_y_plus_axis = "nul"
input_player6_r_y_plus_btn = "nul"
input_player6_r_y_plus_mbtn = "nul"
input_player6_reserved_device = ""
input_player6_right = "nul"
input_player6_right_axis = "nul"
input_player6_right_btn = "nul"
input_player6_right_mbtn = "nul"
input_player6_select = "nul"
input_player6_select_axis = "nul"
input_player6_select_btn = "nul"
input_player6_select_mbtn = "nul"
input_player6_start = "nul"
input_player6_start_axis = "nul"
input_player6_start_btn = "nul"
input_player6_start_mbtn = "nul"
input_player6_turbo = "nul"
input_player6_turbo_axis = "nul"
input_player6_turbo_btn = "nul"
input_player6_turbo_mbtn = "nul"
input_player6_up = "nul"
input_player6_up_axis = "nul"
input_player6_up_btn = "nul"
input_player6_up_mbtn = "nul"
input_player6_x = "nul"
input_player6_x_axis = "nul"
input_player6_x_btn = "nul"
input_player6_x_mbtn = "nul"
input_player6_y = "nul"
input_player6_y_axis = "nul"
input_player6_y_btn = "nul"
input_player6_y_mbtn = "nul"
input_player7_a = "nul"
input_player7_a_axis = "nul"
input_player7_a_btn = "nul"
input_player7_a_mbtn = "nul"
input_player7_analog_dpad_mode = "0"
input_player7_b = "nul"
input_player7_b_axis = "nul"
input_player7_b_btn = "nul"
input_player7_b_mbtn = "nul"
input_player7_device_reservation_type = "0"
input_player7_down = "nul"
input_player7_down_axis = "nul"
input_player7_down_btn = "nul"
input_player7_down_mbtn = "nul"
input_player7_gun_aux_a = "nul"
input_player7_gun_aux_a_axis = "nul"
input_player7_gun_aux_a_btn = "nul"
input_player7_gun_aux_a_mbtn = "nul"
input_player7_gun_aux_b = "nul"
input_player7_gun_aux_b_axis = "nul"
input_player7_gun_aux_b_btn = "nul"
input_player7_gun_aux_b_mbtn = "nul"
input_player7_gun_aux_c = "nul"
input_player7_gun_aux_c_axis = "nul"
input_player7_gun_aux_c_btn = "nul"
input_player7_gun_aux_c_mbtn = "nul"
input_player7_gun_dpad_down = "nul"
input_player7_gun_dpad_down_axis = "nul"
input_player7_gun_dpad_down_btn = "nul"
input_player7_gun_dpad_down_mbtn = "nul"
input_player7_gun_dpad_left = "nul"
input_player7_gun_dpad_left_axis = "nul"
input_player7_gun_dpad_left_btn = "nul"
input_player7_gun_dpad_left_mbtn = "nul"
input_player7_gun_dpad_right = "nul"
input_player7_gun_dpad_right_axis = "nul"
input_player7_gun_dpad_right_btn = "nul"
input_player7_gun_dpad_right_mbtn = "nul"
input_player7_gun_dpad_up = "nul"
input_player7_gun_dpad_up_axis = "nul"
input_player7_gun_dpad_up_btn = "nul"
input_player7_gun_dpad_up_mbtn = "nul"
input_player7_gun_offscreen_shot = "nul"
input_player7_gun_offscreen_shot_axis = "nul"
input_player7_gun_offscreen_shot_btn = "nul"
input_player7_gun_offscreen_shot_mbtn = "2"
input_player7_gun_select = "nul"
input_player7_gun_select_axis = "nul"
input_player7_gun_select_btn = "nul"
input_player7_gun_select_mbtn = "nul"
input_player7_gun_start = "nul"
input_player7_gun_start_axis = "nul"
input_player7_gun_start_btn = "nul"
input_player7_gun_start_mbtn = "nul"
input_player7_gun_trigger = "nul"
input_player7_gun_trigger_axis = "nul"
input_player7_gun_trigger_btn = "nul"
input_player7_gun_trigger_mbtn = "1"
input_player7_joypad_index = "6"
input_player7_l = "nul"
input_player7_l2 = "nul"
input_player7_l2_axis = "nul"
input_player7_l2_btn = "nul"
input_player7_l2_mbtn = "nul"
input_player7_l3 = "nul"
input_player7_l3_axis = "nul"
input_player7_l3_btn = "nul"
input_player7_l3_mbtn = "nul"
input_player7_l_axis = "nul"
input_player7_l_btn = "nul"
input_player7_l_mbtn = "nul"
input_player7_l_x_minus = "nul"
input_player7_l_x_minus_axis = "nul"
input_player7_l_x_minus_btn = "nul"
input_player7_l_x_minus_mbtn = "nul"
input_player7_l_x_plus = "nul"
input_player7_l_x_plus_axis = "nul"
input_player7_l_x_plus_btn = "nul"
input_player7_l_x_plus_mbtn = "nul"
input_player7_l_y_minus = "nul"
input_player7_l_y_minus_axis = "nul"
input_player7_l_y_minus_btn = "nul"
input_player7_l_y_minus_mbtn = "nul"
input_player7_l_y_plus = "nul"
input_player7_l_y_plus_axis = "nul"
input_player7_l_y_plus_btn = "nul"
input_player7_l_y_plus_mbtn = "nul"
input_player7_left = "nul"
input_player7_left_axis = "nul"
input_player7_left_btn = "nul"
input_player7_left_mbtn = "nul"
input_player7_mouse_index = "6"
input_player7_r = "nul"
input_player7_r2 = "nul"
input_player7_r2_axis = "nul"
input_player7_r2_btn = "nul"
input_player7_r2_mbtn = "nul"
input_player7_r3 = "nul"
input_player7_r3_axis = "nul"
input_player7_r3_btn = "nul"
input_player7_r3_mbtn = "nul"
input_player7_r_axis = "nul"
input_player7_r_btn = "nul"
input_player7_r_mbtn = "nul"
input_player7_r_x_minus = "nul"
input_player7_r_x_minus_axis = "nul"
input_player7_r_x_minus_btn = "nul"
input_player7_r_x_minus_mbtn = "nul"
input_player7_r_x_plus = "nul"
input_player7_r_x_plus_axis = "nul"
input_player7_r_x_plus_btn = "nul"
input_player7_r_x_plus_mbtn = "nul"
input_player7_r_y_minus = "nul"
input_player7_r_y_minus_axis = "nul"
input_player7_r_y_minus_btn = "nul"
input_player7_r_y_minus_mbtn = "nul"
input_player7_r_y_plus = "nul"
input_player7_r_y_plus_axis = "nul"
input_player7_r_y_plus_btn = "nul"
input_player7_r_y_plus_mbtn = "nul"
input_player7_reserved_device = ""
input_player7_right = "nul"
input_player7_right_axis = "nul"
input_player7_right_btn = "nul"
input_player7_right_mbtn = "nul"
input_player7_select = "nul"
input_player7_select_axis = "nul"
input_player7_select_btn = "nul"
input_player7_select_mbtn = "nul"
input_player7_start = "nul"
input_player7_start_axis = "nul"
input_player7_start_btn = "nul"
input_player7_start_mbtn = "nul"
input_player7_turbo = "nul"
input_player7_turbo_axis = "nul"
input_player7_turbo_btn = "nul"
input_player7_turbo_mbtn = "nul"
input_player7_up = "nul"
input_player7_up_axis = "nul"
input_player7_up_btn = "nul"
input_player7_up_mbtn = "nul"
input_player7_x = "nul"
input_player7_x_axis = "nul"
input_player7_x_btn = "nul"
input_player7_x_mbtn = "nul"
input_player7_y = "nul"
input_player7_y_axis = "nul"
input_player7_y_btn = "nul"
input_player7_y_mbtn = "nul"
input_player8_a = "nul"
input_player8_a_axis = "nul"
input_player8_a_btn = "nul"
input_player8_a_mbtn = "nul"
input_player8_analog_dpad_mode = "0"
input_player8_b = "nul"
input_player8_b_axis = "nul"
input_player8_b_btn = "nul"
input_player8_b_mbtn = "nul"
input_player8_device_reservation_type = "0"
input_player8_down = "nul"
input_player8_down_axis = "nul"
input_player8_down_btn = "nul"
input_player8_down_mbtn = "nul"
input_player8_gun_aux_a = "nul"
input_player8_gun_aux_a_axis = "nul"
input_player8_gun_aux_a_btn = "nul"
input_player8_gun_aux_a_mbtn = "nul"
input_player8_gun_aux_b = "nul"
input_player8_gun_aux_b_axis = "nul"
input_player8_gun_aux_b_btn = "nul"
input_player8_gun_aux_b_mbtn = "nul"
input_player8_gun_aux_c = "nul"
input_player8_gun_aux_c_axis = "nul"
input_player8_gun_aux_c_btn = "nul"
input_player8_gun_aux_c_mbtn = "nul"
input_player8_gun_dpad_down = "nul"
input_player8_gun_dpad_down_axis = "nul"
input_player8_gun_dpad_down_btn = "nul"
input_player8_gun_dpad_down_mbtn = "nul"
input_player8_gun_dpad_left = "nul"
input_player8_gun_dpad_left_axis = "nul"
input_player8_gun_dpad_left_btn = "nul"
input_player8_gun_dpad_left_mbtn = "nul"
input_player8_gun_dpad_right = "nul"
input_player8_gun_dpad_right_axis = "nul"
input_player8_gun_dpad_right_btn = "nul"
input_player8_gun_dpad_right_mbtn = "nul"
input_player8_gun_dpad_up = "nul"
input_player8_gun_dpad_up_axis = "nul"
input_player8_gun_dpad_up_btn = "nul"
input_player8_gun_dpad_up_mbtn = "nul"
input_player8_gun_offscreen_shot = "nul"
input_player8_gun_offscreen_shot_axis = "nul"
input_player8_gun_offscreen_shot_btn = "nul"
input_player8_gun_offscreen_shot_mbtn = "2"
input_player8_gun_select = "nul"
input_player8_gun_select_axis = "nul"
input_player8_gun_select_btn = "nul"
input_player8_gun_select_mbtn = "nul"
input_player8_gun_start = "nul"
input_player8_gun_start_axis = "nul"
input_player8_gun_start_btn = "nul"
input_player8_gun_start_mbtn = "nul"
input_player8_gun_trigger = "nul"
input_player8_gun_trigger_axis = "nul"
input_player8_gun_trigger_btn = "nul"
input_player8_gun_trigger_mbtn = "1"
input_player8_joypad_index = "7"
input_player8_l = "nul"
input_player8_l2 = "nul"
input_player8_l2_axis = "nul"
input_player8_l2_btn = "nul"
input_player8_l2_mbtn = "nul"
input_player8_l3 = "nul"
input_player8_l3_axis = "nul"
input_player8_l3_btn = "nul"
input_player8_l3_mbtn = "nul"
input_player8_l_axis = "nul"
input_player8_l_btn = "nul"
input_player8_l_mbtn = "nul"
input_player8_l_x_minus = "nul"
input_player8_l_x_minus_axis = "nul"
input_player8_l_x_minus_btn = "nul"
input_player8_l_x_minus_mbtn = "nul"
input_player8_l_x_plus = "nul"
input_player8_l_x_plus_axis = "nul"
input_player8_l_x_plus_btn = "nul"
input_player8_l_x_plus_mbtn = "nul"
input_player8_l_y_minus = "nul"
input_player8_l_y_minus_axis = "nul"
input_player8_l_y_minus_btn = "nul"
input_player8_l_y_minus_mbtn = "nul"
input_player8_l_y_plus = "nul"
input_player8_l_y_plus_axis = "nul"
input_player8_l_y_plus_btn = "nul"
input_player8_l_y_plus_mbtn = "nul"
input_player8_left = "nul"
input_player8_left_axis = "nul"
input_player8_left_btn = "nul"
input_player8_left_mbtn = "nul"
input_player8_mouse_index = "7"
input_player8_r = "nul"
input_player8_r2 = "nul"
input_player8_r2_axis = "nul"
input_player8_r2_btn = "nul"
input_player8_r2_mbtn = "nul"
input_player8_r3 = "nul"
input_player8_r3_axis = "nul"
input_player8_r3_btn = "nul"
input_player8_r3_mbtn = "nul"
input_player8_r_axis = "nul"
input_player8_r_btn = "nul"
input_player8_r_mbtn = "nul"
input_player8_r_x_minus = "nul"
input_player8_r_x_minus_axis = "nul"
input_player8_r_x_minus_btn = "nul"
input_player8_r_x_minus_mbtn = "nul"
input_player8_r_x_plus = "nul"
input_player8_r_x_plus_axis = "nul"
input_player8_r_x_plus_btn = "nul"
input_player8_r_x_plus_mbtn = "nul"
input_player8_r_y_minus = "nul"
input_player8_r_y_minus_axis = "nul"
input_player8_r_y_minus_btn = "nul"
input_player8_r_y_minus_mbtn = "nul"
input_player8_r_y_plus = "nul"
input_player8_r_y_plus_axis = "nul"
input_player8_r_y_plus_btn = "nul"
input_player8_r_y_plus_mbtn = "nul"
input_player8_reserved_device = ""
input_player8_right = "nul"
input_player8_right_axis = "nul"
input_player8_right_btn = "nul"
input_player8_right_mbtn = "nul"
input_player8_select = "nul"
input_player8_select_axis = "nul"
input_player8_select_btn = "nul"
input_player8_select_mbtn = "nul"
input_player8_start = "nul"
input_player8_start_axis = "nul"
input_player8_start_btn = "nul"
input_player8_start_mbtn = "nul"
input_player8_turbo = "nul"
input_player8_turbo_axis = "nul"
input_player8_turbo_btn = "nul"
input_player8_turbo_mbtn = "nul"
input_player8_up = "nul"
input_player8_up_axis = "nul"
input_player8_up_btn = "nul"
input_player8_up_mbtn = "nul"
input_player8_x = "nul"
input_player8_x_axis = "nul"
input_player8_x_btn = "nul"
input_player8_x_mbtn = "nul"
input_player8_y = "nul"
input_player8_y_axis = "nul"
input_player8_y_btn = "nul"
input_player8_y_mbtn = "nul"
input_player9_a = "nul"
input_player9_a_axis = "nul"
input_player9_a_btn = "nul"
input_player9_a_mbtn = "nul"
input_player9_analog_dpad_mode = "0"
input_player9_b = "nul"
input_player9_b_axis = "nul"
input_player9_b_btn = "nul"
input_player9_b_mbtn = "nul"
input_player9_device_reservation_type = "0"
input_player9_down = "nul"
input_player9_down_axis = "nul"
input_player9_down_btn = "nul"
input_player9_down_mbtn = "nul"
input_player9_gun_aux_a = "nul"
input_player9_gun_aux_a_axis = "nul"
input_player9_gun_aux_a_btn = "nul"
input_player9_gun_aux_a_mbtn = "nul"
input_player9_gun_aux_b = "nul"
input_player9_gun_aux_b_axis = "nul"
input_player9_gun_aux_b_btn = "nul"
input_player9_gun_aux_b_mbtn = "nul"
input_player9_gun_aux_c = "nul"
input_player9_gun_aux_c_axis = "nul"
input_player9_gun_aux_c_btn = "nul"
input_player9_gun_aux_c_mbtn = "nul"
input_player9_gun_dpad_down = "nul"
input_player9_gun_dpad_down_axis = "nul"
input_player9_gun_dpad_down_btn = "nul"
input_player9_gun_dpad_down_mbtn = "nul"
input_player9_gun_dpad_left = "nul"
input_player9_gun_dpad_left_axis = "nul"
input_player9_gun_dpad_left_btn = "nul"
input_player9_gun_dpad_left_mbtn = "nul"
input_player9_gun_dpad_right = "nul"
input_player9_gun_dpad_right_axis = "nul"
input_player9_gun_dpad_right_btn = "nul"
input_player9_gun_dpad_right_mbtn = "nul"
input_player9_gun_dpad_up = "nul"
input_player9_gun_dpad_up_axis = "nul"
input_player9_gun_dpad_up_btn = "nul"
input_player9_gun_dpad_up_mbtn = "nul"
input_player9_gun_offscreen_shot = "nul"
input_player9_gun_offscreen_shot_axis = "nul"
input_player9_gun_offscreen_shot_btn = "nul"
input_player9_gun_offscreen_shot_mbtn = "2"
input_player9_gun_select = "nul"
input_player9_gun_select_axis = "nul"
input_player9_gun_select_btn = "nul"
input_player9_gun_select_mbtn = "nul"
input_player9_gun_start = "nul"
input_player9_gun_start_axis = "nul"
input_player9_gun_start_btn = "nul"
input_player9_gun_start_mbtn = "nul"
input_player9_gun_trigger = "nul"
input_player9_gun_trigger_axis = "nul"
input_player9_gun_trigger_btn = "nul"
input_player9_gun_trigger_mbtn = "1"
input_player9_joypad_index = "8"
input_player9_l = "nul"
input_player9_l2 = "nul"
input_player9_l2_axis = "nul"
input_player9_l2_btn = "nul"
input_player9_l2_mbtn = "nul"
input_player9_l3 = "nul"
input_player9_l3_axis = "nul"
input_player9_l3_btn = "nul"
input_player9_l3_mbtn = "nul"
input_player9_l_axis = "nul"
input_player9_l_btn = "nul"
input_player9_l_mbtn = "nul"
input_player9_l_x_minus = "nul"
input_player9_l_x_minus_axis = "nul"
input_player9_l_x_minus_btn = "nul"
input_player9_l_x_minus_mbtn = "nul"
input_player9_l_x_plus = "nul"
input_player9_l_x_plus_axis = "nul"
input_player9_l_x_plus_btn = "nul"
input_player9_l_x_plus_mbtn = "nul"
input_player9_l_y_minus = "nul"
input_player9_l_y_minus_axis = "nul"
input_player9_l_y_minus_btn = "nul"
input_player9_l_y_minus_mbtn = "nul"
input_player9_l_y_plus = "nul"
input_player9_l_y_plus_axis = "nul"
input_player9_l_y_plus_btn = "nul"
input_player9_l_y_plus_mbtn = "nul"
input_player9_left = "nul"
input_player9_left_axis = "nul"
input_player9_left_btn = "nul"
input_player9_left_mbtn = "nul"
input_player9_mouse_index = "8"
input_player9_r = "nul"
input_player9_r2 = "nul"
input_player9_r2_axis = "nul"
input_player9_r2_btn = "nul"
input_player9_r2_mbtn = "nul"
input_player9_r3 = "nul"
input_player9_r3_axis = "nul"
input_player9_r3_btn = "nul"
input_player9_r3_mbtn = "nul"
input_player9_r_axis = "nul"
input_player9_r_btn = "nul"
input_player9_r_mbtn = "nul"
input_player9_r_x_minus = "nul"
input_player9_r_x_minus_axis = "nul"
input_player9_r_x_minus_btn = "nul"
input_player9_r_x_minus_mbtn = "nul"
input_player9_r_x_plus = "nul"
input_player9_r_x_plus_axis = "nul"
input_player9_r_x_plus_btn = "nul"
input_player9_r_x_plus_mbtn = "nul"
input_player9_r_y_minus = "nul"
input_player9_r_y_minus_axis = "nul"
input_player9_r_y_minus_btn = "nul"
input_player9_r_y_minus_mbtn = "nul"
input_player9_r_y_plus = "nul"
input_player9_r_y_plus_axis = "nul"
input_player9_r_y_plus_btn = "nul"
input_player9_r_y_plus_mbtn = "nul"
input_player9_reserved_device = ""
input_player9_right = "nul"
input_player9_right_axis = "nul"
input_player9_right_btn = "nul"
input_player9_right_mbtn = "nul"
input_player9_select = "nul"
input_player9_select_axis = "nul"
input_player9_select_btn = "nul"
input_player9_select_mbtn = "nul"
input_player9_start = "nul"
input_player9_start_axis = "nul"
input_player9_start_btn = "nul"
input_player9_start_mbtn = "nul"
input_player9_turbo = "nul"
input_player9_turbo_axis = "nul"
input_player9_turbo_btn = "nul"
input_player9_turbo_mbtn = "nul"
input_player9_up = "nul"
input_player9_up_axis = "nul"
input_player9_up_btn = "nul"
input_player9_up_mbtn = "nul"
input_player9_x = "nul"
input_player9_x_axis = "nul"
input_player9_x_btn = "nul"
input_player9_x_mbtn = "nul"
input_player9_y = "nul"
input_player9_y_axis = "nul"
input_player9_y_btn = "nul"
input_player9_y_mbtn = "nul"
input_poll_type_behavior = "2"
input_preempt_toggle = "nul"
input_preempt_toggle_axis = "nul"
input_preempt_toggle_btn = "nul"
input_preempt_toggle_mbtn = "nul"
input_quit_gamepad_combo = "0"
input_record_replay = "nul"
input_record_replay_axis = "nul"
input_record_replay_btn = "nul"
input_record_replay_mbtn = "nul"
input_recording_toggle = "nul"
input_recording_toggle_axis = "nul"
input_recording_toggle_btn = "nul"
input_recording_toggle_mbtn = "nul"
input_remap_binds_enable = "true"
input_remap_sort_by_controller_enable = "false"
input_remapping_directory = "~/.config/retroarch/config/remaps"
input_replay_slot_decrease = "nul"
input_replay_slot_decrease_axis = "nul"
input_replay_slot_decrease_btn = "nul"
input_replay_slot_decrease_mbtn = "nul"
input_replay_slot_increase = "nul"
input_replay_slot_increase_axis = "nul"
input_replay_slot_increase_btn = "nul"
input_replay_slot_increase_mbtn = "nul"
input_reset = "h"
input_reset_axis = "nul"
input_reset_btn = "0"
input_reset_mbtn = "nul"
input_rewind = "r"
input_rewind_axis = "nul"
input_rewind_btn = "nul"
input_rewind_mbtn = "nul"
input_rumble_gain = "100"
input_runahead_toggle = "nul"
input_runahead_toggle_axis = "nul"
input_runahead_toggle_btn = "nul"
input_runahead_toggle_mbtn = "nul"
input_save_state = "f2"
input_save_state_axis = "nul"
input_save_state_btn = "5"
input_save_state_mbtn = "nul"
input_screenshot = "f8"
input_screenshot_axis = "nul"
input_screenshot_btn = "nul"
input_screenshot_mbtn = "nul"
input_sensors_enable = "true"
input_shader_next = "m"
input_shader_next_axis = "nul"
input_shader_next_btn = "nul"
input_shader_next_mbtn = "nul"
input_shader_prev = "n"
input_shader_prev_axis = "nul"
input_shader_prev_btn = "nul"
input_shader_prev_mbtn = "nul"
input_shader_toggle = "comma"
input_shader_toggle_axis = "nul"
input_shader_toggle_btn = "nul"
input_shader_toggle_mbtn = "nul"
input_state_slot_decrease = "f6"
input_state_slot_decrease_axis = "nul"
input_state_slot_decrease_btn = "h0left"
input_state_slot_decrease_mbtn = "nul"
input_state_slot_increase = "f7"
input_state_slot_increase_axis = "nul"
input_state_slot_increase_btn = "h0right"
input_state_slot_increase_mbtn = "nul"
input_streaming_toggle = "nul"
input_streaming_toggle_axis = "nul"
input_streaming_toggle_btn = "nul"
input_streaming_toggle_mbtn = "nul"
input_toggle_fast_forward = "space"
input_toggle_fast_forward_axis = "nul"
input_toggle_fast_forward_btn = "nul"
input_toggle_fast_forward_mbtn = "nul"
input_toggle_fullscreen = "f"
input_toggle_fullscreen_axis = "nul"
input_toggle_fullscreen_btn = "nul"
input_toggle_fullscreen_mbtn = "nul"
input_toggle_slowmotion = "nul"
input_toggle_slowmotion_axis = "nul"
input_toggle_slowmotion_btn = "nul"
input_toggle_slowmotion_mbtn = "nul"
input_toggle_statistics = "nul"
input_toggle_statistics_axis = "nul"
input_toggle_statistics_btn = "nul"
input_toggle_statistics_mbtn = "nul"
input_toggle_vrr_runloop = "nul"
input_toggle_vrr_runloop_axis = "nul"
input_toggle_vrr_runloop_btn = "nul"
input_toggle_vrr_runloop_mbtn = "nul"
input_touch_scale = "1"
input_turbo_allow_dpad = "false"
input_turbo_bind = "-1"
input_turbo_button = "0"
input_turbo_default_button = "0"
input_turbo_duty_cycle = "0"
input_turbo_enable = "true"
input_turbo_fire_toggle = "nul"
input_turbo_fire_toggle_axis = "nul"
input_turbo_fire_toggle_btn = "nul"
input_turbo_fire_toggle_mbtn = "nul"
input_turbo_mode = "0"
input_turbo_period = "6"
input_volume_down = "subtract"
input_volume_down_axis = "nul"
input_volume_down_btn = "nul"
input_volume_down_mbtn = "nul"
input_volume_up = "add"
input_volume_up_axis = "nul"
input_volume_up_btn = "nul"
input_volume_up_mbtn = "nul"
joypad_autoconfig_dir = "~/.config/retroarch/autoconfig"
keyboard_gamepad_enable = "true"
keyboard_gamepad_mapping_type = "1"
kiosk_mode_enable = "false"
kiosk_mode_password = ""
led_driver = "null"
libretro_directory = "/usr/lib/libretro"
libretro_info_path = "/usr/share/libretro/info"
libretro_log_level = "1"
load_dummy_on_core_shutdown = "true"
location_allow = "false"
location_driver = "null"
log_dir = "~/.config/retroarch/logs"
log_to_file = "false"
log_to_file_timestamp = "false"
log_verbosity = "true"
materialui_auto_rotate_nav_bar = "true"
materialui_dual_thumbnail_list_view_enable = "true"
materialui_icons_enable = "true"
materialui_landscape_layout_optimization = "1"
materialui_menu_color_theme = "9"
materialui_menu_transition_animation = "0"
materialui_playlist_icons_enable = "true"
materialui_show_nav_bar = "true"
materialui_switch_icons = "true"
materialui_thumbnail_background_enable = "true"
materialui_thumbnail_view_landscape = "2"
materialui_thumbnail_view_portrait = "1"
memory_show = "false"
memory_update_interval = "256"
menu_battery_level_enable = "true"
menu_core_enable = "true"
menu_disable_info_button = "false"
menu_disable_left_analog = "false"
menu_disable_right_analog = "false"
menu_disable_search_button = "false"
menu_driver = "ozone"
menu_dynamic_wallpaper_enable = "true"
menu_enable_widgets = "true"
menu_font_color_blue = "255"
menu_font_color_green = "255"
menu_font_color_red = "255"
menu_footer_opacity = "1.000000"
menu_framebuffer_opacity = "0.900000"
menu_header_opacity = "1.000000"
menu_horizontal_animation = "true"
menu_icon_thumbnails = "0"
menu_ignore_missing_assets = "false"
menu_insert_disk_resume = "true"
menu_left_thumbnails = "0"
menu_linear_filter = "false"
menu_mouse_enable = "true"
menu_navigation_browser_filter_supported_extensions_enable = "true"
menu_navigation_wraparound_enable = "true"
menu_pause_libretro = "true"
menu_pointer_enable = "false"
menu_remember_selection = "1"
menu_rgui_full_width_layout = "true"
menu_rgui_shadows = "false"
menu_rgui_transparency = "true"
menu_savestate_resume = "true"
menu_scale_factor = "1.000000"
menu_screensaver_animation = "0"
menu_screensaver_animation_speed = "1.000000"
menu_screensaver_timeout = "0"
menu_scroll_delay = "256"
menu_scroll_fast = "false"
menu_shader_pipeline = "2"
menu_show_advanced_settings = "true"
menu_show_configurations = "true"
menu_show_core_updater = "false"
menu_show_dump_disc = "true"
menu_show_help = "true"
menu_show_information = "true"
menu_show_latency = "true"
menu_show_load_content = "true"
menu_show_load_content_animation = "false"
menu_show_load_core = "true"
menu_show_load_disc = "true"
menu_show_online_updater = "true"
menu_show_overlays = "true"
menu_show_quit_retroarch = "true"
menu_show_reboot = "true"
menu_show_restart_retroarch = "true"
menu_show_rewind = "true"
menu_show_shutdown = "true"
menu_show_sublabels = "true"
menu_swap_ok_cancel_buttons = "true"
menu_swap_scroll_buttons = "false"
menu_throttle_framerate = "true"
menu_thumbnail_upscale_threshold = "0"
menu_thumbnails = "3"
menu_ticker_smooth = "true"
menu_ticker_speed = "2.000000"
menu_ticker_type = "1"
menu_timedate_date_separator = "0"
menu_timedate_enable = "true"
menu_timedate_style = "11"
menu_unified_controls = "false"
menu_use_preferred_system_color_theme = "false"
menu_wallpaper = ""
menu_wallpaper_opacity = "0.900000"
menu_widget_scale_auto = "true"
menu_widget_scale_factor = "1.000000"
menu_widget_scale_factor_windowed = "1.000000"
menu_xmb_animation_horizontal_highlight = "0"
menu_xmb_animation_move_up_down = "0"
menu_xmb_animation_opening_main_menu = "0"
menu_xmb_show_title_header = "true"
menu_xmb_thumbnail_scale_factor = "100"
menu_xmb_title_margin = "5"
menu_xmb_title_margin_horizontal_offset = "0"
menu_xmb_vertical_fade_factor = "100"
microphone_block_frames = "0"
microphone_device = ""
microphone_driver = "alsathread"
microphone_enable = "true"
microphone_latency = "64"
microphone_rate = "48000"
microphone_resampler = "sinc"
microphone_resampler_quality = "3"
midi_driver = "alsa"
midi_input = "OFF"
midi_output = "OFF"
midi_volume = "100"
netplay_allow_pausing = "false"
netplay_allow_slaves = "true"
netplay_chat_color_msg = "16777215"
netplay_chat_color_name = "32768"
netplay_check_frames = "600"
netplay_custom_mitm_server = ""
netplay_fade_chat = "true"
netplay_input_latency_frames_min = "0"
netplay_input_latency_frames_range = "0"
netplay_ip_address = ""
netplay_ip_port = "55435"
netplay_max_connections = "3"
netplay_max_ping = "0"
netplay_mitm_server = "nyc"
netplay_nat_traversal = "true"
netplay_nickname = ""
netplay_password = ""
netplay_ping_show = "false"
netplay_public_announce = "true"
netplay_request_device_p1 = "false"
netplay_request_device_p10 = "false"
netplay_request_device_p11 = "false"
netplay_request_device_p12 = "false"
netplay_request_device_p13 = "false"
netplay_request_device_p14 = "false"
netplay_request_device_p15 = "false"
netplay_request_device_p16 = "false"
netplay_request_device_p2 = "false"
netplay_request_device_p3 = "false"
netplay_request_device_p4 = "false"
netplay_request_device_p5 = "false"
netplay_request_device_p6 = "false"
netplay_request_device_p7 = "false"
netplay_request_device_p8 = "false"
netplay_request_device_p9 = "false"
netplay_require_slaves = "false"
netplay_share_analog = "0"
netplay_share_digital = "0"
netplay_show_only_connectable = "true"
netplay_show_only_installed_cores = "false"
netplay_show_passworded = "true"
netplay_spectate_password = ""
netplay_start_as_spectator = "false"
netplay_use_mitm_server = "false"
network_cmd_enable = "false"
network_cmd_port = "55355"
network_on_demand_thumbnails = "false"
network_remote_base_port = "55400"
network_remote_enable = "false"
network_remote_enable_user_p1 = "false"
network_remote_enable_user_p10 = "false"
network_remote_enable_user_p11 = "false"
network_remote_enable_user_p12 = "false"
network_remote_enable_user_p13 = "false"
network_remote_enable_user_p14 = "false"
network_remote_enable_user_p15 = "false"
network_remote_enable_user_p16 = "false"
network_remote_enable_user_p2 = "false"
network_remote_enable_user_p3 = "false"
network_remote_enable_user_p4 = "false"
network_remote_enable_user_p5 = "false"
network_remote_enable_user_p6 = "false"
network_remote_enable_user_p7 = "false"
network_remote_enable_user_p8 = "false"
network_remote_enable_user_p9 = "false"
notification_show_autoconfig = "true"
notification_show_autoconfig_fails = "true"
notification_show_cheats_applied = "true"
notification_show_config_override_load = "true"
notification_show_disk_control = "true"
notification_show_fast_forward = "true"
notification_show_netplay_extra = "false"
notification_show_patch_applied = "true"
notification_show_refresh_rate = "true"
notification_show_remap_load = "true"
notification_show_save_state = "true"
notification_show_screenshot = "true"
notification_show_screenshot_duration = "0"
notification_show_screenshot_flash = "0"
notification_show_set_initial_disk = "true"
notification_show_when_menu_is_alive = "false"
osk_overlay_directory = "~/.config/retroarch/overlays/keyboards"
overlay_directory = "~/.config/retroarch/overlays"
ozone_collapse_sidebar = "false"
ozone_menu_color_theme = "1"
ozone_scroll_content_metadata = "false"
ozone_sort_after_truncate_playlist_name = "false"
ozone_thumbnail_scale_factor = "1.000000"
ozone_truncate_playlist_name = "true"
pause_nonactive = "true"
pause_on_disconnect = "false"
perfcnt_enable = "false"
playlist_allow_non_png = "false"
playlist_compression = "false"
playlist_directory = "~/.config/retroarch/playlists"
playlist_entry_remove_enable = "1"
playlist_entry_rename = "true"
playlist_fuzzy_archive_match = "false"
playlist_portable_paths = "false"
playlist_show_entry_idx = "true"
playlist_show_history_icons = "1"
playlist_show_inline_core_name = "0"
playlist_show_sublabels = "true"
playlist_sort_alphabetical = "true"
playlist_sublabel_last_played_style = "1"
playlist_sublabel_runtime_type = "0"
playlist_use_filename = "false"
playlist_use_old_format = "false"
preemptive_frames_enable = "false"
preemptive_frames_hide_warnings = "false"
quick_menu_show_add_to_favorites = "true"
quick_menu_show_add_to_playlist = "false"
quick_menu_show_cheats = "true"
quick_menu_show_close_content = "true"
quick_menu_show_controls = "true"
quick_menu_show_core_options_flush = "false"
quick_menu_show_download_thumbnails = "true"
quick_menu_show_information = "true"
quick_menu_show_options = "true"
quick_menu_show_replay = "false"
quick_menu_show_reset_core_association = "true"
quick_menu_show_restart_content = "true"
quick_menu_show_resume_content = "true"
quick_menu_show_save_content_dir_overrides = "true"
quick_menu_show_save_core_overrides = "true"
quick_menu_show_save_game_overrides = "true"
quick_menu_show_save_load_state = "true"
quick_menu_show_savestate_submenu = "true"
quick_menu_show_set_core_association = "true"
quick_menu_show_shaders = "true"
quick_menu_show_start_recording = "true"
quick_menu_show_start_streaming = "true"
quick_menu_show_take_screenshot = "true"
quick_menu_show_undo_save_load_state = "true"
quit_on_close_content = "0"
quit_press_twice = "false"
record_driver = "ffmpeg"
recording_config_directory = "~/.config/retroarch/records_config"
recording_output_directory = "~/.config/retroarch/records"
remap_save_on_exit = "true"
replay_auto_index = "true"
replay_checkpoint_interval = "0"
replay_max_keep = "0"
replay_slot = "0"
rewind_buffer_size = "20971520"
rewind_buffer_size_step = "10"
rewind_enable = "false"
rewind_granularity = "1"
rgui_aspect_ratio = "0"
rgui_aspect_ratio_lock = "0"
rgui_background_filler_thickness_enable = "true"
rgui_border_filler_enable = "true"
rgui_border_filler_thickness_enable = "true"
rgui_browser_directory = "default"
rgui_config_directory = "~/.config/retroarch/config"
rgui_extended_ascii = "false"
rgui_inline_thumbnails = "false"
rgui_internal_upscale_level = "0"
rgui_menu_color_theme = "4"
rgui_menu_theme_preset = ""
rgui_particle_effect = "0"
rgui_particle_effect_screensaver = "true"
rgui_particle_effect_speed = "1.000000"
rgui_show_start_screen = "false"
rgui_swap_thumbnails = "false"
rgui_switch_icons = "true"
rgui_thumbnail_delay = "0"
rgui_thumbnail_downscaler = "0"
run_ahead_enabled = "false"
run_ahead_frames = "1"
run_ahead_hide_warnings = "false"
run_ahead_secondary_instance = "true"
runtime_log_directory = "default"
save_file_compression = "false"
savefile_directory = "~/.config/retroarch/saves"
savefiles_in_content_dir = "false"
savestate_auto_index = "false"
savestate_auto_load = "false"
savestate_auto_save = "false"
savestate_directory = "~/.config/retroarch/states"
savestate_file_compression = "true"
savestate_max_keep = "0"
savestate_thumbnail_enable = "false"
savestates_in_content_dir = "false"
scan_serial_and_crc = "false"
scan_without_core_match = "false"
screen_brightness = "100"
screen_orientation = "0"
screenshot_directory = "~/.config/retroarch/screenshots"
screenshots_in_content_dir = "false"
settings_show_accessibility = "true"
settings_show_achievements = "true"
settings_show_ai_service = "true"
settings_show_audio = "true"
settings_show_configuration = "true"
settings_show_core = "true"
settings_show_directory = "true"
settings_show_drivers = "true"
settings_show_file_browser = "true"
settings_show_frame_throttle = "true"
settings_show_input = "true"
settings_show_latency = "true"
settings_show_logging = "true"
settings_show_network = "true"
settings_show_onscreen_display = "true"
settings_show_playlists = "true"
settings_show_power_management = "true"
settings_show_recording = "true"
settings_show_saving = "true"
settings_show_user = "true"
settings_show_user_interface = "true"
settings_show_video = "true"
show_hidden_files = "false"
slowmotion_ratio = "3.000000"
soft_filter_enable = "false"
soft_filter_index = "0"
sort_savefiles_by_content_enable = "false"
sort_savefiles_enable = "true"
sort_savestates_by_content_enable = "false"
sort_savestates_enable = "true"
sort_screenshots_by_content_enable = "false"
state_slot = "0"
statistics_show = "false"
stdin_cmd_enable = "false"
streaming_mode = "0"
suspend_screensaver_enable = "true"
sustained_performance_mode = "false"
system_directory = "~/EmulationStation/BIOS"
systemfiles_in_content_dir = "false"
test_input_file_general = ""
test_input_file_joypad = ""
threaded_data_runloop_enable = "true"
thumbnails_directory = "~/.config/retroarch/thumbnails"
twitch_stream_key = ""
ui_companion_enable = "false"
ui_companion_start_on_boot = "true"
ui_companion_toggle = "false"
ui_menubar_enable = "true"
use_last_start_directory = "false"
user_language = "0"
vibrate_on_keypress = "false"
video_adaptive_vsync = "false"
video_allow_rotate = "true"
video_aspect_ratio = "1.333300"
video_aspect_ratio_auto = "false"
video_autoswitch_pal_threshold = "54.500000"
video_autoswitch_refresh_rate = "0"
video_bfi_dark_frames = "1"
video_black_frame_insertion = "0"
video_context_driver = ""
video_crop_overscan = "true"
video_ctx_scaling = "false"
video_disable_composition = "false"
video_driver = "vulkan"
video_filter = ""
video_filter_dir = "/usr/lib/retroarch/filters/video"
video_font_enable = "true"
video_font_path = ""
video_font_size = "32.000000"
video_force_aspect = "true"
video_force_srgb_disable = "false"
video_frame_delay = "0"
video_frame_delay_auto = "false"
video_frame_rest = "false"
video_fullscreen = "false"
video_fullscreen_x = "0"
video_fullscreen_y = "0"
video_gpu_record = "false"
video_gpu_screenshot = "true"
video_hard_sync = "false"
video_hard_sync_frames = "0"
video_hdr_display_contrast = "5.000000"
video_hdr_enable = "false"
video_hdr_expand_gamut = "true"
video_hdr_max_nits = "1000.000000"
video_hdr_paper_white_nits = "200.000000"
video_max_frame_latency = "1"
video_max_swapchain_images = "3"
video_message_color = "ffff00"
video_message_pos_x = "0.050000"
video_message_pos_y = "0.050000"
video_monitor_index = "0"
video_msg_bgcolor_blue = "0"
video_msg_bgcolor_enable = "false"
video_msg_bgcolor_green = "0"
video_msg_bgcolor_opacity = "1.000000"
video_msg_bgcolor_red = "0"
video_notch_write_over_enable = "false"
video_post_filter_record = "false"
video_record_config = ""
video_record_quality = "2"
video_record_scale_factor = "1"
video_record_threads = "2"
video_refresh_rate = "60.000004"
video_rotation = "0"
video_scale = "3"
video_scale_integer = "true"
video_scale_integer_axis = "0"
video_scale_integer_overscale = "false"
video_scale_integer_scaling = "1"
video_scan_subframes = "false"
video_shader_delay = "0"
video_shader_dir = "/usr/share/libretro/shaders"
video_shader_enable = "true"
video_shader_preset_save_reference_enable = "true"
video_shader_remember_last_dir = "false"
video_shader_subframes = "1"
video_shader_watch_files = "true"
video_shared_context = "false"
video_smooth = "false"
video_stream_config = ""
video_stream_port = "56400"
video_stream_quality = "11"
video_stream_scale_factor = "1"
video_stream_url = ""
video_swap_interval = "1"
video_threaded = "false"
video_viewport_bias_x = "0.500000"
video_viewport_bias_y = "0.500000"
video_vsync = "false"
video_waitable_swapchains = "true"
video_window_auto_height_max = "1080"
video_window_auto_width_max = "1920"
video_window_custom_size_enable = "false"
video_window_opacity = "100"
video_window_save_positions = "false"
video_window_show_decorations = "true"
video_windowed_fullscreen = "true"
video_windowed_position_height = "720"
video_windowed_position_width = "1280"
video_windowed_position_x = "0"
video_windowed_position_y = "0"
vrr_runloop_enable = "true"
vulkan_gpu_index = "0"
webdav_password = ""
webdav_url = ""
webdav_username = ""
wifi_driver = "null"
wifi_enabled = "true"
xmb_alpha_factor = "90"
xmb_font = ""
xmb_layout = "0"
xmb_menu_color_theme = "4"
xmb_shadows_enable = "true"
xmb_switch_icons = "true"
xmb_theme = "0"
xmb_vertical_thumbnails = "false"
youtube_stream_key = ""

And here is the vulkaninfo just in case:

$ vulkaninfo
'DISPLAY' environment variable not set... skipping surface info
==========
VULKANINFO
==========

Vulkan Instance Version: 1.4.321


Instance Extensions: count = 24
===============================
	VK_EXT_acquire_drm_display             : extension revision 1
	VK_EXT_acquire_xlib_display            : extension revision 1
	VK_EXT_debug_report                    : extension revision 10
	VK_EXT_debug_utils                     : extension revision 2
	VK_EXT_direct_mode_display             : extension revision 1
	VK_EXT_display_surface_counter         : extension revision 1
	VK_EXT_headless_surface                : extension revision 1
	VK_EXT_surface_maintenance1            : extension revision 1
	VK_EXT_swapchain_colorspace            : extension revision 5
	VK_KHR_device_group_creation           : extension revision 1
	VK_KHR_display                         : extension revision 23
	VK_KHR_external_fence_capabilities     : extension revision 1
	VK_KHR_external_memory_capabilities    : extension revision 1
	VK_KHR_external_semaphore_capabilities : extension revision 1
	VK_KHR_get_display_properties2         : extension revision 1
	VK_KHR_get_physical_device_properties2 : extension revision 2
	VK_KHR_get_surface_capabilities2       : extension revision 1
	VK_KHR_portability_enumeration         : extension revision 1
	VK_KHR_surface                         : extension revision 25
	VK_KHR_surface_protected_capabilities  : extension revision 1
	VK_KHR_wayland_surface                 : extension revision 6
	VK_KHR_xcb_surface                     : extension revision 6
	VK_KHR_xlib_surface                    : extension revision 6
	VK_LUNARG_direct_driver_loading        : extension revision 1

Layers: count = 3
=================
VK_LAYER_FROG_gamescope_wsi_x86_64 (Gamescope WSI (XWayland Bypass) Layer (x86_64)) Vulkan version 1.3.221, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 1
		GPU id = 0 (AMD Radeon 890M Graphics (RADV GFX1150))
		Layer-Device Extensions: count = 0

VK_LAYER_MANGOHUD_overlay_x86 (Vulkan Hud Overlay) Vulkan version 1.3.0, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 1
		GPU id = 0 (AMD Radeon 890M Graphics (RADV GFX1150))
		Layer-Device Extensions: count = 0

VK_LAYER_MANGOHUD_overlay_x86_64 (Vulkan Hud Overlay) Vulkan version 1.3.0, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 1
		GPU id = 0 (AMD Radeon 890M Graphics (RADV GFX1150))
		Layer-Device Extensions: count = 0

Device Properties and Extensions:
=================================
GPU0:
VkPhysicalDeviceProperties:
---------------------------
	apiVersion        = 1.4.318 (4211006)
	driverVersion     = 25.2.3 (104865795)
	vendorID          = 0x1002
	deviceID          = 0x150e
	deviceType        = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
	deviceName        = AMD Radeon 890M Graphics (RADV GFX1150)
	pipelineCacheUUID = 0353ee13-247f-9f38-03c5-9065c7b4cbb0

VkPhysicalDeviceLimits:
-----------------------
	maxImageDimension1D                             = 16384
	maxImageDimension2D                             = 16384
	maxImageDimension3D                             = 2048
	maxImageDimensionCube                           = 16384
	maxImageArrayLayers                             = 2048
	maxTexelBufferElements                          = 4294967295
	maxUniformBufferRange                           = 4294967295
	maxStorageBufferRange                           = 4294967295
	maxPushConstantsSize                            = 256
	maxMemoryAllocationCount                        = 4294967295
	maxSamplerAllocationCount                       = 65536
	bufferImageGranularity                          = 0x00000001
	sparseAddressSpaceSize                          = 0xfffffffc
	maxBoundDescriptorSets                          = 32
	maxPerStageDescriptorSamplers                   = 8388606
	maxPerStageDescriptorUniformBuffers             = 8388606
	maxPerStageDescriptorStorageBuffers             = 8388606
	maxPerStageDescriptorSampledImages              = 8388606
	maxPerStageDescriptorStorageImages              = 8388606
	maxPerStageDescriptorInputAttachments           = 8388606
	maxPerStageResources                            = 8388606
	maxDescriptorSetSamplers                        = 8388606
	maxDescriptorSetUniformBuffers                  = 8388606
	maxDescriptorSetUniformBuffersDynamic           = 16
	maxDescriptorSetStorageBuffers                  = 8388606
	maxDescriptorSetStorageBuffersDynamic           = 8
	maxDescriptorSetSampledImages                   = 8388606
	maxDescriptorSetStorageImages                   = 8388606
	maxDescriptorSetInputAttachments                = 8388606
	maxVertexInputAttributes                        = 32
	maxVertexInputBindings                          = 32
	maxVertexInputAttributeOffset                   = 4294967295
	maxVertexInputBindingStride                     = 2048
	maxVertexOutputComponents                       = 128
	maxTessellationGenerationLevel                  = 64
	maxTessellationPatchSize                        = 32
	maxTessellationControlPerVertexInputComponents  = 128
	maxTessellationControlPerVertexOutputComponents = 128
	maxTessellationControlPerPatchOutputComponents  = 120
	maxTessellationControlTotalOutputComponents     = 4096
	maxTessellationEvaluationInputComponents        = 128
	maxTessellationEvaluationOutputComponents       = 128
	maxGeometryShaderInvocations                    = 32
	maxGeometryInputComponents                      = 64
	maxGeometryOutputComponents                     = 128
	maxGeometryOutputVertices                       = 256
	maxGeometryTotalOutputComponents                = 1024
	maxFragmentInputComponents                      = 128
	maxFragmentOutputAttachments                    = 8
	maxFragmentDualSrcAttachments                   = 1
	maxFragmentCombinedOutputResources              = 8388606
	maxComputeSharedMemorySize                      = 65536
	maxComputeWorkGroupCount: count = 3
		4294967295
		65535
		65535
	maxComputeWorkGroupInvocations                  = 1024
	maxComputeWorkGroupSize: count = 3
		1024
		1024
		1024
	subPixelPrecisionBits                           = 8
	subTexelPrecisionBits                           = 8
	mipmapPrecisionBits                             = 8
	maxDrawIndexedIndexValue                        = 4294967295
	maxDrawIndirectCount                            = 4294967295
	maxSamplerLodBias                               = 16
	maxSamplerAnisotropy                            = 16
	maxViewports                                    = 16
	maxViewportDimensions: count = 2
		16384
		16384
	viewportBoundsRange: count = 2
		-32768
		32767
	viewportSubPixelBits                            = 8
	minMemoryMapAlignment                           = 4096
	minTexelBufferOffsetAlignment                   = 0x00000004
	minUniformBufferOffsetAlignment                 = 0x00000004
	minStorageBufferOffsetAlignment                 = 0x00000004
	minTexelOffset                                  = -32
	maxTexelOffset                                  = 31
	minTexelGatherOffset                            = -32
	maxTexelGatherOffset                            = 31
	minInterpolationOffset                          = -2
	maxInterpolationOffset                          = 2
	subPixelInterpolationOffsetBits                 = 8
	maxFramebufferWidth                             = 16384
	maxFramebufferHeight                            = 16384
	maxFramebufferLayers                            = 1024
	framebufferColorSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	framebufferDepthSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	framebufferStencilSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	framebufferNoAttachmentsSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	maxColorAttachments                             = 8
	sampledImageColorSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	sampledImageIntegerSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	sampledImageDepthSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	sampledImageStencilSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	storageImageSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	maxSampleMaskWords                              = 1
	timestampComputeAndGraphics                     = true
	timestampPeriod                                 = 10
	maxClipDistances                                = 8
	maxCullDistances                                = 8
	maxCombinedClipAndCullDistances                 = 8
	discreteQueuePriorities                         = 2
	pointSizeRange: count = 2
		0
		8191.88
	lineWidthRange: count = 2
		0
		8
	pointSizeGranularity                            = 0.125
	lineWidthGranularity                            = 0.125
	strictLines                                     = false
	standardSampleLocations                         = true
	optimalBufferCopyOffsetAlignment                = 0x00000001
	optimalBufferCopyRowPitchAlignment              = 0x00000001
	nonCoherentAtomSize                             = 0x00000040

VkPhysicalDeviceSparseProperties:
---------------------------------
	residencyStandard2DBlockShape            = true
	residencyStandard2DMultisampleBlockShape = false
	residencyStandard3DBlockShape            = true
	residencyAlignedMipSize                  = false
	residencyNonResidentStrict               = true

VkPhysicalDeviceAccelerationStructurePropertiesKHR:
---------------------------------------------------
	maxGeometryCount                                           = 16777215
	maxInstanceCount                                           = 16777215
	maxPrimitiveCount                                          = 536870911
	maxPerStageDescriptorAccelerationStructures                = 8388606
	maxPerStageDescriptorUpdateAfterBindAccelerationStructures = 8388606
	maxDescriptorSetAccelerationStructures                     = 8388606
	maxDescriptorSetUpdateAfterBindAccelerationStructures      = 8388606
	minAccelerationStructureScratchOffsetAlignment             = 256

VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR:
------------------------------------------------------
	meshAndTaskShaderDerivatives = true

VkPhysicalDeviceConservativeRasterizationPropertiesEXT:
-------------------------------------------------------
	primitiveOverestimationSize                 = 0
	maxExtraPrimitiveOverestimationSize         = 0
	extraPrimitiveOverestimationSizeGranularity = 0
	primitiveUnderestimation                    = true
	conservativePointAndLineRasterization       = false
	degenerateTrianglesRasterized               = true
	degenerateLinesRasterized                   = false
	fullyCoveredFragmentShaderInputVariable     = true
	conservativeRasterizationPostDepthCoverage  = false

VkPhysicalDeviceCooperativeMatrixPropertiesKHR:
-----------------------------------------------
	cooperativeMatrixSupportedStages: count = 1
		SHADER_STAGE_COMPUTE_BIT

VkPhysicalDeviceCustomBorderColorPropertiesEXT:
-----------------------------------------------
	maxCustomBorderColorSamplers = 4096

VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT:
--------------------------------------------------------
	combinedImageSamplerDensityMapDescriptorSize = 0

VkPhysicalDeviceDescriptorBufferPropertiesEXT:
----------------------------------------------
	combinedImageSamplerDescriptorSingleArray            = true
	bufferlessPushDescriptors                            = true
	allowSamplerImageViewPostSubmitCreation              = false
	descriptorBufferOffsetAlignment                      = 0x00000004
	maxDescriptorBufferBindings                          = 32
	maxResourceDescriptorBufferBindings                  = 32
	maxSamplerDescriptorBufferBindings                   = 32
	maxEmbeddedImmutableSamplerBindings                  = 32
	maxEmbeddedImmutableSamplers                         = 8388606
	bufferCaptureReplayDescriptorDataSize                = 8
	imageCaptureReplayDescriptorDataSize                 = 8
	imageViewCaptureReplayDescriptorDataSize             = 1
	samplerCaptureReplayDescriptorDataSize               = 4
	accelerationStructureCaptureReplayDescriptorDataSize = 1
	samplerDescriptorSize                                = 16
	combinedImageSamplerDescriptorSize                   = 96
	sampledImageDescriptorSize                           = 32
	storageImageDescriptorSize                           = 32
	uniformTexelBufferDescriptorSize                     = 16
	robustUniformTexelBufferDescriptorSize               = 16
	storageTexelBufferDescriptorSize                     = 16
	robustStorageTexelBufferDescriptorSize               = 16
	uniformBufferDescriptorSize                          = 16
	robustUniformBufferDescriptorSize                    = 16
	storageBufferDescriptorSize                          = 16
	robustStorageBufferDescriptorSize                    = 16
	inputAttachmentDescriptorSize                        = 32
	accelerationStructureDescriptorSize                  = 16
	maxSamplerDescriptorBufferRange                      = 0xffffffff
	maxResourceDescriptorBufferRange                     = 0xffffffff
	samplerDescriptorBufferAddressSpaceSize              = 0xfffffffc
	resourceDescriptorBufferAddressSpaceSize             = 0xfffffffc
	descriptorBufferAddressSpaceSize                     = 0xfffffffc

VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT:
-----------------------------------------------------
	maxIndirectPipelineCount                      = 4096
	maxIndirectShaderObjectCount                  = 4096
	maxIndirectSequenceCount                      = 1048576
	maxIndirectCommandsTokenCount                 = 128
	maxIndirectCommandsTokenOffset                = 2047
	maxIndirectCommandsIndirectStride             = 2048
	supportedIndirectCommandsInputModes: count = 2
		INDIRECT_COMMANDS_INPUT_MODE_VULKAN_INDEX_BUFFER_EXT
		INDIRECT_COMMANDS_INPUT_MODE_DXGI_INDEX_BUFFER_EXT
	supportedIndirectCommandsShaderStages: count = 14
		SHADER_STAGE_VERTEX_BIT
		SHADER_STAGE_TESSELLATION_CONTROL_BIT
		SHADER_STAGE_TESSELLATION_EVALUATION_BIT
		SHADER_STAGE_GEOMETRY_BIT
		SHADER_STAGE_FRAGMENT_BIT
		SHADER_STAGE_COMPUTE_BIT
		SHADER_STAGE_RAYGEN_BIT_KHR
		SHADER_STAGE_ANY_HIT_BIT_KHR
		SHADER_STAGE_CLOSEST_HIT_BIT_KHR
		SHADER_STAGE_MISS_BIT_KHR
		SHADER_STAGE_INTERSECTION_BIT_KHR
		SHADER_STAGE_CALLABLE_BIT_KHR
		SHADER_STAGE_TASK_BIT_EXT
		SHADER_STAGE_MESH_BIT_EXT
	supportedIndirectCommandsShaderStagesPipelineBinding: count = 1
		SHADER_STAGE_COMPUTE_BIT
	supportedIndirectCommandsShaderStagesShaderBinding: count = 1
		SHADER_STAGE_COMPUTE_BIT
	deviceGeneratedCommandsTransformFeedback      = true
	deviceGeneratedCommandsMultiDrawIndirectCount = true

VkPhysicalDeviceDiscardRectanglePropertiesEXT:
----------------------------------------------
	maxDiscardRectangles = 4

VkPhysicalDeviceDrmPropertiesEXT:
---------------------------------
	hasPrimary   = true
	hasRender    = true
	primaryMajor = 226
	primaryMinor = 1
	renderMajor  = 226
	renderMinor  = 128

VkPhysicalDeviceExtendedDynamicState3PropertiesEXT:
---------------------------------------------------
	dynamicPrimitiveTopologyUnrestricted = false

VkPhysicalDeviceExternalMemoryHostPropertiesEXT:
------------------------------------------------
	minImportedHostPointerAlignment = 0x00001000

VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR:
-------------------------------------------------------
	triStripVertexOrderIndependentOfProvokingVertex = false

VkPhysicalDeviceFragmentShadingRatePropertiesKHR:
-------------------------------------------------
	minFragmentShadingRateAttachmentTexelSize:
		width  = 8
		height = 8
	maxFragmentShadingRateAttachmentTexelSize:
		width  = 8
		height = 8
	maxFragmentShadingRateAttachmentTexelSizeAspectRatio = 1
	primitiveFragmentShadingRateWithMultipleViewports    = true
	layeredShadingRateAttachments                        = false
	fragmentShadingRateNonTrivialCombinerOps             = true
	maxFragmentSize:
		width  = 2
		height = 2
	maxFragmentSizeAspectRatio                           = 2
	maxFragmentShadingRateCoverageSamples                = 32
	maxFragmentShadingRateRasterizationSamples           = SAMPLE_COUNT_8_BIT
	fragmentShadingRateWithShaderDepthStencilWrites      = true
	fragmentShadingRateWithSampleMask                    = true
	fragmentShadingRateWithShaderSampleMask              = false
	fragmentShadingRateWithConservativeRasterization     = true
	fragmentShadingRateWithFragmentShaderInterlock       = true
	fragmentShadingRateWithCustomSampleLocations         = true
	fragmentShadingRateStrictMultiplyCombiner            = true

VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT:
-----------------------------------------------------
	graphicsPipelineLibraryFastLinking                        = true
	graphicsPipelineLibraryIndependentInterpolationDecoration = true

VkPhysicalDeviceLayeredApiPropertiesListKHR:
--------------------------------------------
	layeredApiCount               = 0
	pLayeredApis                  = NULL

VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT:
----------------------------------------------------
	nativeUnalignedPerformance = false

VkPhysicalDeviceMaintenance7PropertiesKHR:
------------------------------------------
	robustFragmentShadingRateAttachmentAccess                 = true
	separateDepthStencilAttachmentAccess                      = true
	maxDescriptorSetTotalUniformBuffersDynamic                = 16
	maxDescriptorSetTotalStorageBuffersDynamic                = 8
	maxDescriptorSetTotalBuffersDynamic                       = 24
	maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic = 16
	maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic = 8
	maxDescriptorSetUpdateAfterBindTotalBuffersDynamic        = 24

VkPhysicalDeviceMaintenance9PropertiesKHR:
------------------------------------------
	image2DViewOf3DSparse = true
	defaultVertexAttributeValue = DEFAULT_VERTEX_ATTRIBUTE_VALUE_ZERO_ZERO_ZERO_ZERO_KHR

VkPhysicalDeviceMapMemoryPlacedPropertiesEXT:
---------------------------------------------
	minPlacedMemoryMapAlignment = 0x00001000

VkPhysicalDeviceMeshShaderPropertiesEXT:
----------------------------------------
	maxTaskWorkGroupTotalCount            = 4194304
	maxTaskWorkGroupCount: count = 3
		65535
		65535
		65535
	maxTaskWorkGroupInvocations           = 1024
	maxTaskWorkGroupSize: count = 3
		1024
		1024
		1024
	maxTaskPayloadSize                    = 16384
	maxTaskSharedMemorySize               = 65536
	maxTaskPayloadAndSharedMemorySize     = 65536
	maxMeshWorkGroupTotalCount            = 4194304
	maxMeshWorkGroupCount: count = 3
		65535
		65535
		65535
	maxMeshWorkGroupInvocations           = 256
	maxMeshWorkGroupSize: count = 3
		256
		256
		256
	maxMeshSharedMemorySize               = 28672
	maxMeshPayloadAndSharedMemorySize     = 45056
	maxMeshOutputMemorySize               = 32768
	maxMeshPayloadAndOutputMemorySize     = 49152
	maxMeshOutputComponents               = 128
	maxMeshOutputVertices                 = 256
	maxMeshOutputPrimitives               = 256
	maxMeshOutputLayers                   = 8
	maxMeshMultiviewViewCount             = 8
	meshOutputPerVertexGranularity        = 1
	meshOutputPerPrimitiveGranularity     = 1
	maxPreferredTaskWorkGroupInvocations  = 64
	maxPreferredMeshWorkGroupInvocations  = 128
	prefersLocalInvocationVertexOutput    = true
	prefersLocalInvocationPrimitiveOutput = true
	prefersCompactVertexOutput            = true
	prefersCompactPrimitiveOutput         = false

VkPhysicalDeviceMultiDrawPropertiesEXT:
---------------------------------------
	maxMultiDrawCount = 2048

VkPhysicalDeviceNestedCommandBufferPropertiesEXT:
-------------------------------------------------
	maxCommandBufferNestingLevel = 4294967295

VkPhysicalDevicePCIBusInfoPropertiesEXT:
----------------------------------------
	pciDomain   = 0
	pciBus      = 102
	pciDevice   = 0
	pciFunction = 0

VkPhysicalDevicePipelineBinaryPropertiesKHR:
--------------------------------------------
	pipelineBinaryInternalCache            = true
	pipelineBinaryInternalCacheControl     = true
	pipelineBinaryPrefersInternalCache     = false
	pipelineBinaryPrecompiledInternalCache = false
	pipelineBinaryCompressedData           = false

VkPhysicalDeviceProvokingVertexPropertiesEXT:
---------------------------------------------
	provokingVertexModePerPipeline                       = true
	transformFeedbackPreservesTriangleFanProvokingVertex = true

VkPhysicalDeviceRayTracingPipelinePropertiesKHR:
------------------------------------------------
	shaderGroupHandleSize              = 32
	maxRayRecursionDepth               = 31
	maxShaderGroupStride               = 16384
	shaderGroupBaseAlignment           = 32
	shaderGroupHandleCaptureReplaySize = 32
	maxRayDispatchInvocationCount      = 67108864
	shaderGroupHandleAlignment         = 16
	maxRayHitAttributeSize             = 32

VkPhysicalDeviceRobustness2PropertiesKHR:
-----------------------------------------
	robustStorageBufferAccessSizeAlignment = 0x00000004
	robustUniformBufferAccessSizeAlignment = 0x00000004

VkPhysicalDeviceSampleLocationsPropertiesEXT:
---------------------------------------------
	sampleLocationSampleCounts: count = 4
		SAMPLE_COUNT_1_BIT
		SAMPLE_COUNT_2_BIT
		SAMPLE_COUNT_4_BIT
		SAMPLE_COUNT_8_BIT
	maxSampleLocationGridSize:
		width  = 2
		height = 2
	sampleLocationCoordinateRange: count = 2
		0
		0.9375
	sampleLocationSubPixelBits       = 4
	variableSampleLocations          = true

VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT:
----------------------------------------------------
	shaderModuleIdentifierAlgorithmUUID     = 4d455341-2d42-4c41-4b45-330000000000

VkPhysicalDeviceShaderObjectPropertiesEXT:
------------------------------------------
	shaderBinaryUUID     = 0353ee13-247f-9f38-03c5-9065c7b4cbb0
	shaderBinaryVersion  = 1

VkPhysicalDeviceTransformFeedbackPropertiesEXT:
-----------------------------------------------
	maxTransformFeedbackStreams                = 4
	maxTransformFeedbackBuffers                = 4
	maxTransformFeedbackBufferSize             = 0xffffffff
	maxTransformFeedbackStreamDataSize         = 512
	maxTransformFeedbackBufferDataSize         = 512
	maxTransformFeedbackBufferDataStride       = 512
	transformFeedbackQueries                   = true
	transformFeedbackStreamsLinesTriangles     = true
	transformFeedbackRasterizationStreamSelect = false
	transformFeedbackDraw                      = true

VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT:
----------------------------------------------------
	maxVertexAttribDivisor = 4294967295

VkPhysicalDeviceVulkan11Properties:
-----------------------------------
	deviceUUID                        = 00000000-6600-0000-0000-000000000000
	driverUUID                        = 414d442d-4d45-5341-2d44-525600000000
	deviceNodeMask                    = 0
	deviceLUIDValid                   = false
	subgroupSize                      = 64
	subgroupSupportedStages: count = 14
		SHADER_STAGE_VERTEX_BIT
		SHADER_STAGE_TESSELLATION_CONTROL_BIT
		SHADER_STAGE_TESSELLATION_EVALUATION_BIT
		SHADER_STAGE_GEOMETRY_BIT
		SHADER_STAGE_FRAGMENT_BIT
		SHADER_STAGE_COMPUTE_BIT
		SHADER_STAGE_RAYGEN_BIT_KHR
		SHADER_STAGE_ANY_HIT_BIT_KHR
		SHADER_STAGE_CLOSEST_HIT_BIT_KHR
		SHADER_STAGE_MISS_BIT_KHR
		SHADER_STAGE_INTERSECTION_BIT_KHR
		SHADER_STAGE_CALLABLE_BIT_KHR
		SHADER_STAGE_TASK_BIT_EXT
		SHADER_STAGE_MESH_BIT_EXT
	subgroupSupportedOperations: count = 10
		SUBGROUP_FEATURE_BASIC_BIT
		SUBGROUP_FEATURE_VOTE_BIT
		SUBGROUP_FEATURE_ARITHMETIC_BIT
		SUBGROUP_FEATURE_BALLOT_BIT
		SUBGROUP_FEATURE_SHUFFLE_BIT
		SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
		SUBGROUP_FEATURE_CLUSTERED_BIT
		SUBGROUP_FEATURE_QUAD_BIT
		SUBGROUP_FEATURE_ROTATE_BIT
		SUBGROUP_FEATURE_ROTATE_CLUSTERED_BIT
	subgroupQuadOperationsInAllStages = true
	pointClippingBehavior             = POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
	maxMultiviewViewCount             = 8
	maxMultiviewInstanceIndex         = 2147483647
	protectedNoFault                  = false
	maxPerSetDescriptors              = 22369621
	maxMemoryAllocationSize           = 0xfffffffc

VkPhysicalDeviceVulkan12Properties:
-----------------------------------
	driverID                                             = DRIVER_ID_MESA_RADV
	driverName                                           = radv
	driverInfo                                           = Mesa 25.2.3-arch1.1
	conformanceVersion:
		major    = 1
		minor    = 4
		subminor = 0
		patch    = 0
	denormBehaviorIndependence                           = SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY
	roundingModeIndependence                             = SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY
	shaderSignedZeroInfNanPreserveFloat16                = true
	shaderSignedZeroInfNanPreserveFloat32                = true
	shaderSignedZeroInfNanPreserveFloat64                = true
	shaderDenormPreserveFloat16                          = true
	shaderDenormPreserveFloat32                          = true
	shaderDenormPreserveFloat64                          = true
	shaderDenormFlushToZeroFloat16                       = true
	shaderDenormFlushToZeroFloat32                       = true
	shaderDenormFlushToZeroFloat64                       = true
	shaderRoundingModeRTEFloat16                         = true
	shaderRoundingModeRTEFloat32                         = true
	shaderRoundingModeRTEFloat64                         = true
	shaderRoundingModeRTZFloat16                         = true
	shaderRoundingModeRTZFloat32                         = true
	shaderRoundingModeRTZFloat64                         = true
	maxUpdateAfterBindDescriptorsInAllPools              = 67108863
	shaderUniformBufferArrayNonUniformIndexingNative     = false
	shaderSampledImageArrayNonUniformIndexingNative      = false
	shaderStorageBufferArrayNonUniformIndexingNative     = false
	shaderStorageImageArrayNonUniformIndexingNative      = false
	shaderInputAttachmentArrayNonUniformIndexingNative   = false
	robustBufferAccessUpdateAfterBind                    = true
	quadDivergentImplicitLod                             = false
	maxPerStageDescriptorUpdateAfterBindSamplers         = 8388606
	maxPerStageDescriptorUpdateAfterBindUniformBuffers   = 8388606
	maxPerStageDescriptorUpdateAfterBindStorageBuffers   = 8388606
	maxPerStageDescriptorUpdateAfterBindSampledImages    = 8388606
	maxPerStageDescriptorUpdateAfterBindStorageImages    = 8388606
	maxPerStageDescriptorUpdateAfterBindInputAttachments = 8388606
	maxPerStageUpdateAfterBindResources                  = 8388606
	maxDescriptorSetUpdateAfterBindSamplers              = 8388606
	maxDescriptorSetUpdateAfterBindUniformBuffers        = 8388606
	maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 16
	maxDescriptorSetUpdateAfterBindStorageBuffers        = 8388606
	maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 8
	maxDescriptorSetUpdateAfterBindSampledImages         = 8388606
	maxDescriptorSetUpdateAfterBindStorageImages         = 8388606
	maxDescriptorSetUpdateAfterBindInputAttachments      = 8388606
	supportedDepthResolveModes: count = 4
		RESOLVE_MODE_SAMPLE_ZERO_BIT
		RESOLVE_MODE_AVERAGE_BIT
		RESOLVE_MODE_MIN_BIT
		RESOLVE_MODE_MAX_BIT
	supportedStencilResolveModes: count = 3
		RESOLVE_MODE_SAMPLE_ZERO_BIT
		RESOLVE_MODE_MIN_BIT
		RESOLVE_MODE_MAX_BIT
	independentResolveNone                               = true
	independentResolve                                   = true
	filterMinmaxSingleComponentFormats                   = true
	filterMinmaxImageComponentMapping                    = true
	maxTimelineSemaphoreValueDifference                  = 18446744073709551615
	framebufferIntegerColorSampleCounts: count = 1
		SAMPLE_COUNT_1_BIT

VkPhysicalDeviceVulkan13Properties:
-----------------------------------
	minSubgroupSize                                                               = 32
	maxSubgroupSize                                                               = 64
	maxComputeWorkgroupSubgroups                                                  = 4294967295
	requiredSubgroupSizeStages: count = 3
		SHADER_STAGE_COMPUTE_BIT
		SHADER_STAGE_TASK_BIT_EXT
		SHADER_STAGE_MESH_BIT_EXT
	maxInlineUniformBlockSize                                                     = 4194304
	maxPerStageDescriptorInlineUniformBlocks                                      = 134217728
	maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks                       = 134217728
	maxDescriptorSetInlineUniformBlocks                                           = 64
	maxDescriptorSetUpdateAfterBindInlineUniformBlocks                            = 64
	maxInlineUniformTotalSize                                                     = 65535
	integerDotProduct8BitUnsignedAccelerated                                      = true
	integerDotProduct8BitSignedAccelerated                                        = true
	integerDotProduct8BitMixedSignednessAccelerated                               = true
	integerDotProduct4x8BitPackedUnsignedAccelerated                              = true
	integerDotProduct4x8BitPackedSignedAccelerated                                = true
	integerDotProduct4x8BitPackedMixedSignednessAccelerated                       = true
	integerDotProduct16BitUnsignedAccelerated                                     = false
	integerDotProduct16BitSignedAccelerated                                       = false
	integerDotProduct16BitMixedSignednessAccelerated                              = false
	integerDotProduct32BitUnsignedAccelerated                                     = false
	integerDotProduct32BitSignedAccelerated                                       = false
	integerDotProduct32BitMixedSignednessAccelerated                              = false
	integerDotProduct64BitUnsignedAccelerated                                     = false
	integerDotProduct64BitSignedAccelerated                                       = false
	integerDotProduct64BitMixedSignednessAccelerated                              = false
	integerDotProductAccumulatingSaturating8BitUnsignedAccelerated                = true
	integerDotProductAccumulatingSaturating8BitSignedAccelerated                  = true
	integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated         = true
	integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated        = true
	integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated          = true
	integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = true
	integerDotProductAccumulatingSaturating16BitUnsignedAccelerated               = false
	integerDotProductAccumulatingSaturating16BitSignedAccelerated                 = false
	integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated        = false
	integerDotProductAccumulatingSaturating32BitUnsignedAccelerated               = false
	integerDotProductAccumulatingSaturating32BitSignedAccelerated                 = false
	integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated        = false
	integerDotProductAccumulatingSaturating64BitUnsignedAccelerated               = false
	integerDotProductAccumulatingSaturating64BitSignedAccelerated                 = false
	integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated        = false
	storageTexelBufferOffsetAlignmentBytes                                        = 0x00000004
	storageTexelBufferOffsetSingleTexelAlignment                                  = true
	uniformTexelBufferOffsetAlignmentBytes                                        = 0x00000004
	uniformTexelBufferOffsetSingleTexelAlignment                                  = true
	maxBufferSize                                                                 = 0xfffffffc

VkPhysicalDeviceVulkan14Properties:
-----------------------------------
	lineSubPixelPrecisionBits                           = 4
	maxVertexAttribDivisor                              = 4294967295
	supportsNonZeroFirstInstance                        = true
	maxPushDescriptors                                  = 32
	dynamicRenderingLocalReadDepthStencilAttachments    = true
	dynamicRenderingLocalReadMultisampledAttachments    = true
	earlyFragmentMultisampleCoverageAfterSampleCounting = true
	earlyFragmentSampleMaskTestBeforeSampleCounting     = true
	depthStencilSwizzleOneSupport                       = true
	polygonModePointSize                                = true
	nonStrictSinglePixelWideLinesUseParallelogram       = true
	nonStrictWideLinesUseParallelogram                  = true
	blockTexelViewCompatibleMultipleLayers              = true
	maxCombinedImageSamplerDescriptorCount              = 3
	fragmentShadingRateClampCombinerInputs              = true
	defaultRobustnessStorageBuffers                     = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS
	defaultRobustnessUniformBuffers                     = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS
	defaultRobustnessVertexInputs                       = PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED
	defaultRobustnessImages                             = PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2
	copySrcLayoutCount                                  = 29
	pCopySrcLayouts: count = 29
		IMAGE_LAYOUT_UNDEFINED
		IMAGE_LAYOUT_GENERAL
		IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
		IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
		IMAGE_LAYOUT_PREINITIALIZED
		IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_RENDERING_LOCAL_READ
		IMAGE_LAYOUT_PRESENT_SRC_KHR
		IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR
		IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR
		IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR
		IMAGE_LAYOUT_SHARED_PRESENT_KHR
		IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR
		IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR
		IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR
		IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR
		IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT
		IMAGE_LAYOUT_ZERO_INITIALIZED_EXT
	copyDstLayoutCount                                  = 29
	pCopyDstLayouts: count = 29
		IMAGE_LAYOUT_UNDEFINED
		IMAGE_LAYOUT_GENERAL
		IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
		IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
		IMAGE_LAYOUT_PREINITIALIZED
		IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_READ_ONLY_OPTIMAL
		IMAGE_LAYOUT_ATTACHMENT_OPTIMAL
		IMAGE_LAYOUT_RENDERING_LOCAL_READ
		IMAGE_LAYOUT_PRESENT_SRC_KHR
		IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR
		IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR
		IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR
		IMAGE_LAYOUT_SHARED_PRESENT_KHR
		IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR
		IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR
		IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR
		IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR
		IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT
		IMAGE_LAYOUT_ZERO_INITIALIZED_EXT
	optimalTilingLayoutUUID                             = 414d442d-4d45-5341-2d44-525600000000
	identicalMemoryTypeRequirements                     = false

Device Extensions: count = 221
	VK_AMD_buffer_marker                          : extension revision 1
	VK_AMD_device_coherent_memory                 : extension revision 1
	VK_AMD_draw_indirect_count                    : extension revision 2
	VK_AMD_gcn_shader                             : extension revision 1
	VK_AMD_gpu_shader_half_float                  : extension revision 2
	VK_AMD_gpu_shader_int16                       : extension revision 2
	VK_AMD_memory_overallocation_behavior         : extension revision 1
	VK_AMD_mixed_attachment_samples               : extension revision 1
	VK_AMD_shader_ballot                          : extension revision 1
	VK_AMD_shader_core_properties                 : extension revision 2
	VK_AMD_shader_core_properties2                : extension revision 1
	VK_AMD_shader_early_and_late_fragment_tests   : extension revision 1
	VK_AMD_shader_explicit_vertex_parameter       : extension revision 1
	VK_AMD_shader_image_load_store_lod            : extension revision 1
	VK_AMD_shader_trinary_minmax                  : extension revision 1
	VK_EXT_4444_formats                           : extension revision 1
	VK_EXT_attachment_feedback_loop_dynamic_state : extension revision 1
	VK_EXT_attachment_feedback_loop_layout        : extension revision 2
	VK_EXT_border_color_swizzle                   : extension revision 1
	VK_EXT_buffer_device_address                  : extension revision 2
	VK_EXT_calibrated_timestamps                  : extension revision 2
	VK_EXT_color_write_enable                     : extension revision 1
	VK_EXT_conditional_rendering                  : extension revision 2
	VK_EXT_conservative_rasterization             : extension revision 1
	VK_EXT_custom_border_color                    : extension revision 12
	VK_EXT_depth_bias_control                     : extension revision 1
	VK_EXT_depth_clamp_control                    : extension revision 1
	VK_EXT_depth_clamp_zero_one                   : extension revision 1
	VK_EXT_depth_clip_control                     : extension revision 1
	VK_EXT_depth_clip_enable                      : extension revision 1
	VK_EXT_depth_range_unrestricted               : extension revision 1
	VK_EXT_descriptor_buffer                      : extension revision 1
	VK_EXT_descriptor_indexing                    : extension revision 2
	VK_EXT_device_address_binding_report          : extension revision 1
	VK_EXT_device_fault                           : extension revision 2
	VK_EXT_device_generated_commands              : extension revision 1
	VK_EXT_device_memory_report                   : extension revision 2
	VK_EXT_discard_rectangles                     : extension revision 2
	VK_EXT_display_control                        : extension revision 1
	VK_EXT_dynamic_rendering_unused_attachments   : extension revision 1
	VK_EXT_extended_dynamic_state                 : extension revision 1
	VK_EXT_extended_dynamic_state2                : extension revision 1
	VK_EXT_extended_dynamic_state3                : extension revision 2
	VK_EXT_external_memory_acquire_unmodified     : extension revision 1
	VK_EXT_external_memory_dma_buf                : extension revision 1
	VK_EXT_external_memory_host                   : extension revision 1
	VK_EXT_fragment_shader_interlock              : extension revision 1
	VK_EXT_global_priority                        : extension revision 2
	VK_EXT_global_priority_query                  : extension revision 1
	VK_EXT_graphics_pipeline_library              : extension revision 1
	VK_EXT_hdr_metadata                           : extension revision 3
	VK_EXT_host_query_reset                       : extension revision 1
	VK_EXT_image_2d_view_of_3d                    : extension revision 1
	VK_EXT_image_compression_control              : extension revision 1
	VK_EXT_image_drm_format_modifier              : extension revision 2
	VK_EXT_image_robustness                       : extension revision 1
	VK_EXT_image_sliced_view_of_3d                : extension revision 1
	VK_EXT_image_view_min_lod                     : extension revision 1
	VK_EXT_index_type_uint8                       : extension revision 1
	VK_EXT_inline_uniform_block                   : extension revision 1
	VK_EXT_legacy_vertex_attributes               : extension revision 1
	VK_EXT_line_rasterization                     : extension revision 1
	VK_EXT_load_store_op_none                     : extension revision 1
	VK_EXT_map_memory_placed                      : extension revision 1
	VK_EXT_memory_budget                          : extension revision 1
	VK_EXT_memory_priority                        : extension revision 1
	VK_EXT_mesh_shader                            : extension revision 1
	VK_EXT_multi_draw                             : extension revision 1
	VK_EXT_mutable_descriptor_type                : extension revision 1
	VK_EXT_nested_command_buffer                  : extension revision 1
	VK_EXT_non_seamless_cube_map                  : extension revision 1
	VK_EXT_pci_bus_info                           : extension revision 2
	VK_EXT_physical_device_drm                    : extension revision 1
	VK_EXT_pipeline_creation_cache_control        : extension revision 3
	VK_EXT_pipeline_creation_feedback             : extension revision 1
	VK_EXT_pipeline_library_group_handles         : extension revision 1
	VK_EXT_pipeline_robustness                    : extension revision 1
	VK_EXT_post_depth_coverage                    : extension revision 1
	VK_EXT_primitive_topology_list_restart        : extension revision 1
	VK_EXT_primitives_generated_query             : extension revision 1
	VK_EXT_private_data                           : extension revision 1
	VK_EXT_provoking_vertex                       : extension revision 1
	VK_EXT_queue_family_foreign                   : extension revision 1
	VK_EXT_robustness2                            : extension revision 1
	VK_EXT_sample_locations                       : extension revision 1
	VK_EXT_sampler_filter_minmax                  : extension revision 2
	VK_EXT_scalar_block_layout                    : extension revision 1
	VK_EXT_separate_stencil_usage                 : extension revision 1
	VK_EXT_shader_atomic_float                    : extension revision 1
	VK_EXT_shader_atomic_float2                   : extension revision 1
	VK_EXT_shader_demote_to_helper_invocation     : extension revision 1
	VK_EXT_shader_image_atomic_int64              : extension revision 1
	VK_EXT_shader_module_identifier               : extension revision 1
	VK_EXT_shader_object                          : extension revision 1
	VK_EXT_shader_replicated_composites           : extension revision 1
	VK_EXT_shader_stencil_export                  : extension revision 1
	VK_EXT_shader_subgroup_ballot                 : extension revision 1
	VK_EXT_shader_subgroup_vote                   : extension revision 1
	VK_EXT_shader_viewport_index_layer            : extension revision 1
	VK_EXT_subgroup_size_control                  : extension revision 2
	VK_EXT_swapchain_maintenance1                 : extension revision 1
	VK_EXT_texel_buffer_alignment                 : extension revision 1
	VK_EXT_tooling_info                           : extension revision 1
	VK_EXT_transform_feedback                     : extension revision 1
	VK_EXT_vertex_attribute_divisor               : extension revision 3
	VK_EXT_vertex_input_dynamic_state             : extension revision 2
	VK_EXT_ycbcr_image_arrays                     : extension revision 1
	VK_EXT_zero_initialize_device_memory          : extension revision 1
	VK_GOOGLE_decorate_string                     : extension revision 1
	VK_GOOGLE_hlsl_functionality1                 : extension revision 1
	VK_GOOGLE_user_type                           : extension revision 1
	VK_INTEL_shader_integer_functions2            : extension revision 1
	VK_KHR_16bit_storage                          : extension revision 1
	VK_KHR_8bit_storage                           : extension revision 1
	VK_KHR_acceleration_structure                 : extension revision 13
	VK_KHR_bind_memory2                           : extension revision 1
	VK_KHR_buffer_device_address                  : extension revision 1
	VK_KHR_calibrated_timestamps                  : extension revision 1
	VK_KHR_compute_shader_derivatives             : extension revision 1
	VK_KHR_cooperative_matrix                     : extension revision 2
	VK_KHR_copy_commands2                         : extension revision 1
	VK_KHR_create_renderpass2                     : extension revision 1
	VK_KHR_dedicated_allocation                   : extension revision 3
	VK_KHR_deferred_host_operations               : extension revision 4
	VK_KHR_depth_clamp_zero_one                   : extension revision 1
	VK_KHR_depth_stencil_resolve                  : extension revision 1
	VK_KHR_descriptor_update_template             : extension revision 1
	VK_KHR_device_group                           : extension revision 4
	VK_KHR_draw_indirect_count                    : extension revision 1
	VK_KHR_driver_properties                      : extension revision 1
	VK_KHR_dynamic_rendering                      : extension revision 1
	VK_KHR_dynamic_rendering_local_read           : extension revision 1
	VK_KHR_external_fence                         : extension revision 1
	VK_KHR_external_fence_fd                      : extension revision 1
	VK_KHR_external_memory                        : extension revision 1
	VK_KHR_external_memory_fd                     : extension revision 1
	VK_KHR_external_semaphore                     : extension revision 1
	VK_KHR_external_semaphore_fd                  : extension revision 1
	VK_KHR_format_feature_flags2                  : extension revision 2
	VK_KHR_fragment_shader_barycentric            : extension revision 1
	VK_KHR_fragment_shading_rate                  : extension revision 2
	VK_KHR_get_memory_requirements2               : extension revision 1
	VK_KHR_global_priority                        : extension revision 1
	VK_KHR_image_format_list                      : extension revision 1
	VK_KHR_imageless_framebuffer                  : extension revision 1
	VK_KHR_incremental_present                    : extension revision 2
	VK_KHR_index_type_uint8                       : extension revision 1
	VK_KHR_line_rasterization                     : extension revision 1
	VK_KHR_load_store_op_none                     : extension revision 1
	VK_KHR_maintenance1                           : extension revision 2
	VK_KHR_maintenance2                           : extension revision 1
	VK_KHR_maintenance3                           : extension revision 1
	VK_KHR_maintenance4                           : extension revision 2
	VK_KHR_maintenance5                           : extension revision 1
	VK_KHR_maintenance6                           : extension revision 1
	VK_KHR_maintenance7                           : extension revision 1
	VK_KHR_maintenance8                           : extension revision 1
	VK_KHR_maintenance9                           : extension revision 1
	VK_KHR_map_memory2                            : extension revision 1
	VK_KHR_multiview                              : extension revision 1
	VK_KHR_pipeline_binary                        : extension revision 1
	VK_KHR_pipeline_executable_properties         : extension revision 1
	VK_KHR_pipeline_library                       : extension revision 1
	VK_KHR_present_id                             : extension revision 1
	VK_KHR_present_id2                            : extension revision 1
	VK_KHR_present_wait                           : extension revision 1
	VK_KHR_present_wait2                          : extension revision 1
	VK_KHR_push_descriptor                        : extension revision 2
	VK_KHR_ray_query                              : extension revision 1
	VK_KHR_ray_tracing_maintenance1               : extension revision 1
	VK_KHR_ray_tracing_pipeline                   : extension revision 1
	VK_KHR_ray_tracing_position_fetch             : extension revision 1
	VK_KHR_relaxed_block_layout                   : extension revision 1
	VK_KHR_robustness2                            : extension revision 1
	VK_KHR_sampler_mirror_clamp_to_edge           : extension revision 3
	VK_KHR_sampler_ycbcr_conversion               : extension revision 14
	VK_KHR_separate_depth_stencil_layouts         : extension revision 1
	VK_KHR_shader_atomic_int64                    : extension revision 1
	VK_KHR_shader_clock                           : extension revision 1
	VK_KHR_shader_draw_parameters                 : extension revision 1
	VK_KHR_shader_expect_assume                   : extension revision 1
	VK_KHR_shader_float16_int8                    : extension revision 1
	VK_KHR_shader_float_controls                  : extension revision 4
	VK_KHR_shader_float_controls2                 : extension revision 1
	VK_KHR_shader_integer_dot_product             : extension revision 1
	VK_KHR_shader_maximal_reconvergence           : extension revision 1
	VK_KHR_shader_non_semantic_info               : extension revision 1
	VK_KHR_shader_quad_control                    : extension revision 1
	VK_KHR_shader_relaxed_extended_instruction    : extension revision 1
	VK_KHR_shader_subgroup_extended_types         : extension revision 1
	VK_KHR_shader_subgroup_rotate                 : extension revision 2
	VK_KHR_shader_subgroup_uniform_control_flow   : extension revision 1
	VK_KHR_shader_terminate_invocation            : extension revision 1
	VK_KHR_spirv_1_4                              : extension revision 1
	VK_KHR_storage_buffer_storage_class           : extension revision 1
	VK_KHR_swapchain                              : extension revision 70
	VK_KHR_swapchain_mutable_format               : extension revision 1
	VK_KHR_synchronization2                       : extension revision 1
	VK_KHR_timeline_semaphore                     : extension revision 2
	VK_KHR_unified_image_layouts                  : extension revision 1
	VK_KHR_uniform_buffer_standard_layout         : extension revision 1
	VK_KHR_variable_pointers                      : extension revision 1
	VK_KHR_vertex_attribute_divisor               : extension revision 1
	VK_KHR_video_decode_av1                       : extension revision 1
	VK_KHR_video_decode_h264                      : extension revision 9
	VK_KHR_video_decode_h265                      : extension revision 8
	VK_KHR_video_decode_queue                     : extension revision 8
	VK_KHR_video_decode_vp9                       : extension revision 1
	VK_KHR_video_encode_av1                       : extension revision 1
	VK_KHR_video_encode_h264                      : extension revision 14
	VK_KHR_video_encode_h265                      : extension revision 14
	VK_KHR_video_encode_queue                     : extension revision 12
	VK_KHR_video_maintenance1                     : extension revision 1
	VK_KHR_video_maintenance2                     : extension revision 1
	VK_KHR_video_queue                            : extension revision 8
	VK_KHR_vulkan_memory_model                    : extension revision 3
	VK_KHR_workgroup_memory_explicit_layout       : extension revision 1
	VK_KHR_zero_initialize_workgroup_memory       : extension revision 1
	VK_MESA_image_alignment_control               : extension revision 1
	VK_NV_compute_shader_derivatives              : extension revision 1
	VK_VALVE_mutable_descriptor_type              : extension revision 1

VkQueueFamilyProperties:
========================
	queueProperties[0]:
	-------------------
		minImageTransferGranularity = (1,1,1)
		queueCount                  = 1
		queueFlags                  = QUEUE_GRAPHICS_BIT | QUEUE_COMPUTE_BIT | QUEUE_TRANSFER_BIT | QUEUE_SPARSE_BINDING_BIT
		timestampValidBits          = 64
		present support             = false
		VkQueueFamilyOwnershipTransferPropertiesKHR:
		--------------------------------------------
			optimalImageTransferToQueueFamilies = 4294967295

		VkQueueFamilyQueryResultStatusPropertiesKHR:
		--------------------------------------------
			queryResultStatusSupport = false

		VkQueueFamilyVideoPropertiesKHR:
		--------------------------------
			videoCodecOperations:
				None


	queueProperties[1]:
	-------------------
		minImageTransferGranularity = (1,1,1)
		queueCount                  = 4
		queueFlags                  = QUEUE_COMPUTE_BIT | QUEUE_TRANSFER_BIT | QUEUE_SPARSE_BINDING_BIT
		timestampValidBits          = 64
		present support             = false
		VkQueueFamilyOwnershipTransferPropertiesKHR:
		--------------------------------------------
			optimalImageTransferToQueueFamilies = 4294967295

		VkQueueFamilyQueryResultStatusPropertiesKHR:
		--------------------------------------------
			queryResultStatusSupport = false

		VkQueueFamilyVideoPropertiesKHR:
		--------------------------------
			videoCodecOperations:
				None


	queueProperties[2]:
	-------------------
		minImageTransferGranularity = (1,1,1)
		queueCount                  = 1
		queueFlags                  = QUEUE_VIDEO_DECODE_BIT_KHR
		timestampValidBits          = 0
		present support             = false
		VkQueueFamilyOwnershipTransferPropertiesKHR:
		--------------------------------------------
			optimalImageTransferToQueueFamilies = 4294967295

		VkQueueFamilyQueryResultStatusPropertiesKHR:
		--------------------------------------------
			queryResultStatusSupport = false

		VkQueueFamilyVideoPropertiesKHR:
		--------------------------------
			videoCodecOperations: count = 4
				VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR
				VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR
				VIDEO_CODEC_OPERATION_DECODE_AV1_BIT_KHR
				VIDEO_CODEC_OPERATION_DECODE_VP9_BIT_KHR


	queueProperties[3]:
	-------------------
		minImageTransferGranularity = (1,1,1)
		queueCount                  = 1
		queueFlags                  = QUEUE_VIDEO_ENCODE_BIT_KHR
		timestampValidBits          = 0
		present support             = false
		VkQueueFamilyOwnershipTransferPropertiesKHR:
		--------------------------------------------
			optimalImageTransferToQueueFamilies = 4294967295

		VkQueueFamilyQueryResultStatusPropertiesKHR:
		--------------------------------------------
			queryResultStatusSupport = false

		VkQueueFamilyVideoPropertiesKHR:
		--------------------------------
			videoCodecOperations: count = 3
				VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_KHR
				VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_KHR
				VIDEO_CODEC_OPERATION_ENCODE_AV1_BIT_KHR


	queueProperties[4]:
	-------------------
		minImageTransferGranularity = (1,1,1)
		queueCount                  = 1
		queueFlags                  = QUEUE_SPARSE_BINDING_BIT
		timestampValidBits          = 0
		present support             = false
		VkQueueFamilyOwnershipTransferPropertiesKHR:
		--------------------------------------------
			optimalImageTransferToQueueFamilies = 4294967295

		VkQueueFamilyQueryResultStatusPropertiesKHR:
		--------------------------------------------
			queryResultStatusSupport = false

		VkQueueFamilyVideoPropertiesKHR:
		--------------------------------
			videoCodecOperations:
				None


VkPhysicalDeviceMemoryProperties:
=================================
memoryHeaps: count = 2
	memoryHeaps[0]:
		size   = 6265372672 (0x175720000) (5.84 GiB)
		budget = 6199185408 (0x171801000) (5.77 GiB)
		usage  = 0 (0x00000000) (0.00 B)
		flags:
			None
	memoryHeaps[1]:
		size   = 12530749440 (0x2eae41000) (11.67 GiB)
		budget = 12398362624 (0x2e3000000) (11.55 GiB)
		usage  = 0 (0x00000000) (0.00 B)
		flags: count = 1
			MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryTypes: count = 11
	memoryTypes[0]:
		heapIndex     = 1
		propertyFlags = 0x0001: count = 1
			MEMORY_PROPERTY_DEVICE_LOCAL_BIT
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_D32_SFLOAT
				FORMAT_S8_UINT
				FORMAT_D16_UNORM_S8_UINT
				FORMAT_D32_SFLOAT_S8_UINT
			IMAGE_TILING_LINEAR:
				color images
	memoryTypes[1]:
		heapIndex     = 1
		propertyFlags = 0x0001: count = 1
			MEMORY_PROPERTY_DEVICE_LOCAL_BIT
		usable for:
			IMAGE_TILING_OPTIMAL:
				None
			IMAGE_TILING_LINEAR:
				None
	memoryTypes[2]:
		heapIndex     = 0
		propertyFlags = 0x0006: count = 2
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_D32_SFLOAT
				FORMAT_S8_UINT
				FORMAT_D16_UNORM_S8_UINT
				FORMAT_D32_SFLOAT_S8_UINT
			IMAGE_TILING_LINEAR:
				color images
	memoryTypes[3]:
		heapIndex     = 1
		propertyFlags = 0x0007: count = 3
			MEMORY_PROPERTY_DEVICE_LOCAL_BIT
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_D32_SFLOAT
				FORMAT_S8_UINT
				FORMAT_D16_UNORM_S8_UINT
				FORMAT_D32_SFLOAT_S8_UINT
			IMAGE_TILING_LINEAR:
				color images
	memoryTypes[4]:
		heapIndex     = 1
		propertyFlags = 0x0007: count = 3
			MEMORY_PROPERTY_DEVICE_LOCAL_BIT
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
		usable for:
			IMAGE_TILING_OPTIMAL:
				None
			IMAGE_TILING_LINEAR:
				None
	memoryTypes[5]:
		heapIndex     = 0
		propertyFlags = 0x000e: count = 3
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
			MEMORY_PROPERTY_HOST_CACHED_BIT
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_D32_SFLOAT
				FORMAT_S8_UINT
				FORMAT_D16_UNORM_S8_UINT
				FORMAT_D32_SFLOAT_S8_UINT
			IMAGE_TILING_LINEAR:
				color images
	memoryTypes[6]:
		heapIndex     = 0
		propertyFlags = 0x000e: count = 3
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
			MEMORY_PROPERTY_HOST_CACHED_BIT
		usable for:
			IMAGE_TILING_OPTIMAL:
				None
			IMAGE_TILING_LINEAR:
				None
	memoryTypes[7]:
		heapIndex     = 1
		propertyFlags = 0x00c1: count = 3
			MEMORY_PROPERTY_DEVICE_LOCAL_BIT
			MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD
			MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_D32_SFLOAT
				FORMAT_S8_UINT
				FORMAT_D16_UNORM_S8_UINT
				FORMAT_D32_SFLOAT_S8_UINT
			IMAGE_TILING_LINEAR:
				color images
	memoryTypes[8]:
		heapIndex     = 0
		propertyFlags = 0x00c6: count = 4
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
			MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD
			MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_D32_SFLOAT
				FORMAT_S8_UINT
				FORMAT_D16_UNORM_S8_UINT
				FORMAT_D32_SFLOAT_S8_UINT
			IMAGE_TILING_LINEAR:
				color images
	memoryTypes[9]:
		heapIndex     = 1
		propertyFlags = 0x00c7: count = 5
			MEMORY_PROPERTY_DEVICE_LOCAL_BIT
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
			MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD
			MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_D32_SFLOAT
				FORMAT_S8_UINT
				FORMAT_D16_UNORM_S8_UINT
				FORMAT_D32_SFLOAT_S8_UINT
			IMAGE_TILING_LINEAR:
				color images
	memoryTypes[10]:
		heapIndex     = 0
		propertyFlags = 0x00ce: count = 5
			MEMORY_PROPERTY_HOST_VISIBLE_BIT
			MEMORY_PROPERTY_HOST_COHERENT_BIT
			MEMORY_PROPERTY_HOST_CACHED_BIT
			MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD
			MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
		usable for:
			IMAGE_TILING_OPTIMAL:
				color images
				FORMAT_D16_UNORM
				FORMAT_D32_SFLOAT
				FORMAT_S8_UINT
				FORMAT_D16_UNORM_S8_UINT
				FORMAT_D32_SFLOAT_S8_UINT
			IMAGE_TILING_LINEAR:
				color images

VkPhysicalDeviceFeatures:
=========================
	robustBufferAccess                      = true
	fullDrawIndexUint32                     = true
	imageCubeArray                          = true
	independentBlend                        = true
	geometryShader                          = true
	tessellationShader                      = true
	sampleRateShading                       = true
	dualSrcBlend                            = true
	logicOp                                 = true
	multiDrawIndirect                       = true
	drawIndirectFirstInstance               = true
	depthClamp                              = true
	depthBiasClamp                          = true
	fillModeNonSolid                        = true
	depthBounds                             = true
	wideLines                               = true
	largePoints                             = true
	alphaToOne                              = true
	multiViewport                           = true
	samplerAnisotropy                       = true
	textureCompressionETC2                  = false
	textureCompressionASTC_LDR              = false
	textureCompressionBC                    = true
	occlusionQueryPrecise                   = true
	pipelineStatisticsQuery                 = true
	vertexPipelineStoresAndAtomics          = true
	fragmentStoresAndAtomics                = true
	shaderTessellationAndGeometryPointSize  = true
	shaderImageGatherExtended               = true
	shaderStorageImageExtendedFormats       = true
	shaderStorageImageMultisample           = true
	shaderStorageImageReadWithoutFormat     = true
	shaderStorageImageWriteWithoutFormat    = true
	shaderUniformBufferArrayDynamicIndexing = true
	shaderSampledImageArrayDynamicIndexing  = true
	shaderStorageBufferArrayDynamicIndexing = true
	shaderStorageImageArrayDynamicIndexing  = true
	shaderClipDistance                      = true
	shaderCullDistance                      = true
	shaderFloat64                           = true
	shaderInt64                             = true
	shaderInt16                             = true
	shaderResourceResidency                 = true
	shaderResourceMinLod                    = true
	sparseBinding                           = true
	sparseResidencyBuffer                   = true
	sparseResidencyImage2D                  = true
	sparseResidencyImage3D                  = true
	sparseResidency2Samples                 = false
	sparseResidency4Samples                 = false
	sparseResidency8Samples                 = false
	sparseResidency16Samples                = false
	sparseResidencyAliased                  = true
	variableMultisampleRate                 = true
	inheritedQueries                        = true

VkPhysicalDevice4444FormatsFeaturesEXT:
---------------------------------------
	formatA4R4G4B4 = true
	formatA4B4G4R4 = true

VkPhysicalDeviceAccelerationStructureFeaturesKHR:
-------------------------------------------------
	accelerationStructure                                 = true
	accelerationStructureCaptureReplay                    = true
	accelerationStructureIndirectBuild                    = false
	accelerationStructureHostCommands                     = false
	descriptorBindingAccelerationStructureUpdateAfterBind = true

VkPhysicalDeviceAddressBindingReportFeaturesEXT:
------------------------------------------------
	reportAddressBinding = true

VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT:
--------------------------------------------------------------
	attachmentFeedbackLoopDynamicState = true

VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT:
--------------------------------------------------------
	attachmentFeedbackLoopLayout = true

VkPhysicalDeviceBorderColorSwizzleFeaturesEXT:
----------------------------------------------
	borderColorSwizzle          = true
	borderColorSwizzleFromImage = true

VkPhysicalDeviceBufferDeviceAddressFeaturesEXT:
-----------------------------------------------
	bufferDeviceAddress              = true
	bufferDeviceAddressCaptureReplay = false
	bufferDeviceAddressMultiDevice   = false

VkPhysicalDeviceColorWriteEnableFeaturesEXT:
--------------------------------------------
	colorWriteEnable = true

VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR:
----------------------------------------------------
	computeDerivativeGroupQuads  = false
	computeDerivativeGroupLinear = true

VkPhysicalDeviceConditionalRenderingFeaturesEXT:
------------------------------------------------
	conditionalRendering          = true
	inheritedConditionalRendering = false

VkPhysicalDeviceCooperativeMatrixFeaturesKHR:
---------------------------------------------
	cooperativeMatrix                   = true
	cooperativeMatrixRobustBufferAccess = true

VkPhysicalDeviceCustomBorderColorFeaturesEXT:
---------------------------------------------
	customBorderColors             = true
	customBorderColorWithoutFormat = true

VkPhysicalDeviceDepthBiasControlFeaturesEXT:
--------------------------------------------
	depthBiasControl                                = true
	leastRepresentableValueForceUnormRepresentation = true
	floatRepresentation                             = true
	depthBiasExact                                  = true

VkPhysicalDeviceDepthClampControlFeaturesEXT:
---------------------------------------------
	depthClampControl = true

VkPhysicalDeviceDepthClampZeroOneFeaturesKHR:
---------------------------------------------
	depthClampZeroOne = true

VkPhysicalDeviceDepthClipControlFeaturesEXT:
--------------------------------------------
	depthClipControl = true

VkPhysicalDeviceDepthClipEnableFeaturesEXT:
-------------------------------------------
	depthClipEnable = true

VkPhysicalDeviceDescriptorBufferFeaturesEXT:
--------------------------------------------
	descriptorBuffer                   = true
	descriptorBufferCaptureReplay      = true
	descriptorBufferImageLayoutIgnored = true
	descriptorBufferPushDescriptors    = true

VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT:
---------------------------------------------------
	deviceGeneratedCommands        = true
	dynamicGeneratedPipelineLayout = true

VkPhysicalDeviceDeviceMemoryReportFeaturesEXT:
----------------------------------------------
	deviceMemoryReport = true

VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT:
-------------------------------------------------------------
	dynamicRenderingUnusedAttachments = true

VkPhysicalDeviceExtendedDynamicState2FeaturesEXT:
-------------------------------------------------
	extendedDynamicState2                   = true
	extendedDynamicState2LogicOp            = true
	extendedDynamicState2PatchControlPoints = true

VkPhysicalDeviceExtendedDynamicState3FeaturesEXT:
-------------------------------------------------
	extendedDynamicState3TessellationDomainOrigin         = true
	extendedDynamicState3DepthClampEnable                 = true
	extendedDynamicState3PolygonMode                      = true
	extendedDynamicState3RasterizationSamples             = true
	extendedDynamicState3SampleMask                       = true
	extendedDynamicState3AlphaToCoverageEnable            = true
	extendedDynamicState3AlphaToOneEnable                 = true
	extendedDynamicState3LogicOpEnable                    = true
	extendedDynamicState3ColorBlendEnable                 = true
	extendedDynamicState3ColorBlendEquation               = true
	extendedDynamicState3ColorWriteMask                   = true
	extendedDynamicState3RasterizationStream              = false
	extendedDynamicState3ConservativeRasterizationMode    = true
	extendedDynamicState3ExtraPrimitiveOverestimationSize = false
	extendedDynamicState3DepthClipEnable                  = true
	extendedDynamicState3SampleLocationsEnable            = true
	extendedDynamicState3ColorBlendAdvanced               = false
	extendedDynamicState3ProvokingVertexMode              = true
	extendedDynamicState3LineRasterizationMode            = true
	extendedDynamicState3LineStippleEnable                = true
	extendedDynamicState3DepthClipNegativeOneToOne        = true
	extendedDynamicState3ViewportWScalingEnable           = false
	extendedDynamicState3ViewportSwizzle                  = false
	extendedDynamicState3CoverageToColorEnable            = false
	extendedDynamicState3CoverageToColorLocation          = false
	extendedDynamicState3CoverageModulationMode           = false
	extendedDynamicState3CoverageModulationTableEnable    = false
	extendedDynamicState3CoverageModulationTable          = false
	extendedDynamicState3CoverageReductionMode            = false
	extendedDynamicState3RepresentativeFragmentTestEnable = false
	extendedDynamicState3ShadingRateImageEnable           = false

VkPhysicalDeviceExtendedDynamicStateFeaturesEXT:
------------------------------------------------
	extendedDynamicState = true

VkPhysicalDeviceFaultFeaturesEXT:
---------------------------------
	deviceFault             = true
	deviceFaultVendorBinary = false

VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR:
-----------------------------------------------------
	fragmentShaderBarycentric = true

VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT:
---------------------------------------------------
	fragmentShaderSampleInterlock      = true
	fragmentShaderPixelInterlock       = true
	fragmentShaderShadingRateInterlock = false

VkPhysicalDeviceFragmentShadingRateFeaturesKHR:
-----------------------------------------------
	pipelineFragmentShadingRate   = true
	primitiveFragmentShadingRate  = true
	attachmentFragmentShadingRate = true

VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT:
---------------------------------------------------
	graphicsPipelineLibrary = true

VkPhysicalDeviceImage2DViewOf3DFeaturesEXT:
-------------------------------------------
	image2DViewOf3D   = true
	sampler2DViewOf3D = false

VkPhysicalDeviceImageCompressionControlFeaturesEXT:
---------------------------------------------------
	imageCompressionControl = true

VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT:
-----------------------------------------------
	imageSlicedViewOf3D = true

VkPhysicalDeviceImageViewMinLodFeaturesEXT:
-------------------------------------------
	minLod = true

VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT:
--------------------------------------------------
	legacyVertexAttributes = true

VkPhysicalDeviceMaintenance7FeaturesKHR:
----------------------------------------
	maintenance7 = true

VkPhysicalDeviceMaintenance8FeaturesKHR:
----------------------------------------
	maintenance8 = true

VkPhysicalDeviceMaintenance9FeaturesKHR:
----------------------------------------
	maintenance9 = true

VkPhysicalDeviceMapMemoryPlacedFeaturesEXT:
-------------------------------------------
	memoryMapPlaced      = true
	memoryMapRangePlaced = false
	memoryUnmapReserve   = true

VkPhysicalDeviceMemoryPriorityFeaturesEXT:
------------------------------------------
	memoryPriority = true

VkPhysicalDeviceMeshShaderFeaturesEXT:
--------------------------------------
	taskShader                             = true
	meshShader                             = true
	multiviewMeshShader                    = true
	primitiveFragmentShadingRateMeshShader = true
	meshShaderQueries                      = false

VkPhysicalDeviceMultiDrawFeaturesEXT:
-------------------------------------
	multiDraw = true

VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT:
-------------------------------------------------
	mutableDescriptorType = true

VkPhysicalDeviceNestedCommandBufferFeaturesEXT:
-----------------------------------------------
	nestedCommandBuffer                = true
	nestedCommandBufferRendering       = true
	nestedCommandBufferSimultaneousUse = true

VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT:
----------------------------------------------
	nonSeamlessCubeMap = true

VkPhysicalDevicePipelineBinaryFeaturesKHR:
------------------------------------------
	pipelineBinaries = true

VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR:
--------------------------------------------------------
	pipelineExecutableInfo = true

VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT:
-------------------------------------------------------
	pipelineLibraryGroupHandles = true

VkPhysicalDevicePresentId2FeaturesKHR:
--------------------------------------
	presentId2 = true

VkPhysicalDevicePresentIdFeaturesKHR:
-------------------------------------
	presentId = true

VkPhysicalDevicePresentWait2FeaturesKHR:
----------------------------------------
	presentWait2 = true

VkPhysicalDevicePresentWaitFeaturesKHR:
---------------------------------------
	presentWait = true

VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT:
--------------------------------------------------------
	primitiveTopologyListRestart      = true
	primitiveTopologyPatchListRestart = false

VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT:
----------------------------------------------------
	primitivesGeneratedQuery                      = true
	primitivesGeneratedQueryWithRasterizerDiscard = true
	primitivesGeneratedQueryWithNonZeroStreams    = true

VkPhysicalDeviceProvokingVertexFeaturesEXT:
-------------------------------------------
	provokingVertexLast                       = true
	transformFeedbackPreservesProvokingVertex = true

VkPhysicalDeviceRayQueryFeaturesKHR:
------------------------------------
	rayQuery = true

VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR:
--------------------------------------------------
	rayTracingMaintenance1               = true
	rayTracingPipelineTraceRaysIndirect2 = true

VkPhysicalDeviceRayTracingPipelineFeaturesKHR:
----------------------------------------------
	rayTracingPipeline                                    = true
	rayTracingPipelineShaderGroupHandleCaptureReplay      = true
	rayTracingPipelineShaderGroupHandleCaptureReplayMixed = false
	rayTracingPipelineTraceRaysIndirect                   = true
	rayTraversalPrimitiveCulling                          = true

VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR:
---------------------------------------------------
	rayTracingPositionFetch = true

VkPhysicalDeviceRobustness2FeaturesKHR:
---------------------------------------
	robustBufferAccess2 = true
	robustImageAccess2  = true
	nullDescriptor      = true

VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT:
----------------------------------------------
	shaderBufferFloat16Atomics      = false
	shaderBufferFloat16AtomicAdd    = false
	shaderBufferFloat16AtomicMinMax = false
	shaderBufferFloat32AtomicMinMax = true
	shaderBufferFloat64AtomicMinMax = false
	shaderSharedFloat16Atomics      = false
	shaderSharedFloat16AtomicAdd    = false
	shaderSharedFloat16AtomicMinMax = false
	shaderSharedFloat32AtomicMinMax = true
	shaderSharedFloat64AtomicMinMax = true
	shaderImageFloat32AtomicMinMax  = false
	sparseImageFloat32AtomicMinMax  = false

VkPhysicalDeviceShaderAtomicFloatFeaturesEXT:
---------------------------------------------
	shaderBufferFloat32Atomics   = true
	shaderBufferFloat32AtomicAdd = true
	shaderBufferFloat64Atomics   = true
	shaderBufferFloat64AtomicAdd = false
	shaderSharedFloat32Atomics   = true
	shaderSharedFloat32AtomicAdd = true
	shaderSharedFloat64Atomics   = true
	shaderSharedFloat64AtomicAdd = false
	shaderImageFloat32Atomics    = true
	shaderImageFloat32AtomicAdd  = false
	sparseImageFloat32Atomics    = true
	sparseImageFloat32AtomicAdd  = false

VkPhysicalDeviceShaderClockFeaturesKHR:
---------------------------------------
	shaderSubgroupClock = true
	shaderDeviceClock   = true

VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT:
--------------------------------------------------
	shaderImageInt64Atomics = true
	sparseImageInt64Atomics = true

VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR:
------------------------------------------------------
	shaderMaximalReconvergence = true

VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT:
--------------------------------------------------
	shaderModuleIdentifier = true

VkPhysicalDeviceShaderObjectFeaturesEXT:
----------------------------------------
	shaderObject = true

VkPhysicalDeviceShaderQuadControlFeaturesKHR:
---------------------------------------------
	shaderQuadControl = true

VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR:
------------------------------------------------------------
	shaderRelaxedExtendedInstruction = true

VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT:
------------------------------------------------------
	shaderReplicatedComposites = true

VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR:
------------------------------------------------------------
	shaderSubgroupUniformControlFlow = true

VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR:
-------------------------------------------------
	swapchainMaintenance1 = true

VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT:
------------------------------------------------
	texelBufferAlignment = true

VkPhysicalDeviceTransformFeedbackFeaturesEXT:
---------------------------------------------
	transformFeedback = true
	geometryStreams   = true

VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR:
-----------------------------------------------
	unifiedImageLayouts      = true
	unifiedImageLayoutsVideo = true

VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT:
---------------------------------------------------
	vertexInputDynamicState = true

VkPhysicalDeviceVideoDecodeVP9FeaturesKHR:
------------------------------------------
	videoDecodeVP9 = true

VkPhysicalDeviceVideoEncodeAV1FeaturesKHR:
------------------------------------------
	videoEncodeAV1 = true

VkPhysicalDeviceVideoMaintenance1FeaturesKHR:
---------------------------------------------
	videoMaintenance1 = true

VkPhysicalDeviceVideoMaintenance2FeaturesKHR:
---------------------------------------------
	videoMaintenance2 = true

VkPhysicalDeviceVulkan11Features:
---------------------------------
	storageBuffer16BitAccess           = true
	uniformAndStorageBuffer16BitAccess = true
	storagePushConstant16              = true
	storageInputOutput16               = true
	multiview                          = true
	multiviewGeometryShader            = true
	multiviewTessellationShader        = true
	variablePointersStorageBuffer      = true
	variablePointers                   = true
	protectedMemory                    = false
	samplerYcbcrConversion             = true
	shaderDrawParameters               = true

VkPhysicalDeviceVulkan12Features:
---------------------------------
	samplerMirrorClampToEdge                           = true
	drawIndirectCount                                  = true
	storageBuffer8BitAccess                            = true
	uniformAndStorageBuffer8BitAccess                  = true
	storagePushConstant8                               = true
	shaderBufferInt64Atomics                           = true
	shaderSharedInt64Atomics                           = true
	shaderFloat16                                      = true
	shaderInt8                                         = true
	descriptorIndexing                                 = true
	shaderInputAttachmentArrayDynamicIndexing          = true
	shaderUniformTexelBufferArrayDynamicIndexing       = true
	shaderStorageTexelBufferArrayDynamicIndexing       = true
	shaderUniformBufferArrayNonUniformIndexing         = true
	shaderSampledImageArrayNonUniformIndexing          = true
	shaderStorageBufferArrayNonUniformIndexing         = true
	shaderStorageImageArrayNonUniformIndexing          = true
	shaderInputAttachmentArrayNonUniformIndexing       = true
	shaderUniformTexelBufferArrayNonUniformIndexing    = true
	shaderStorageTexelBufferArrayNonUniformIndexing    = true
	descriptorBindingUniformBufferUpdateAfterBind      = true
	descriptorBindingSampledImageUpdateAfterBind       = true
	descriptorBindingStorageImageUpdateAfterBind       = true
	descriptorBindingStorageBufferUpdateAfterBind      = true
	descriptorBindingUniformTexelBufferUpdateAfterBind = true
	descriptorBindingStorageTexelBufferUpdateAfterBind = true
	descriptorBindingUpdateUnusedWhilePending          = true
	descriptorBindingPartiallyBound                    = true
	descriptorBindingVariableDescriptorCount           = true
	runtimeDescriptorArray                             = true
	samplerFilterMinmax                                = true
	scalarBlockLayout                                  = true
	imagelessFramebuffer                               = true
	uniformBufferStandardLayout                        = true
	shaderSubgroupExtendedTypes                        = true
	separateDepthStencilLayouts                        = true
	hostQueryReset                                     = true
	timelineSemaphore                                  = true
	bufferDeviceAddress                                = true
	bufferDeviceAddressCaptureReplay                   = true
	bufferDeviceAddressMultiDevice                     = false
	vulkanMemoryModel                                  = true
	vulkanMemoryModelDeviceScope                       = true
	vulkanMemoryModelAvailabilityVisibilityChains      = false
	shaderOutputViewportIndex                          = true
	shaderOutputLayer                                  = true
	subgroupBroadcastDynamicId                         = true

VkPhysicalDeviceVulkan13Features:
---------------------------------
	robustImageAccess                                  = true
	inlineUniformBlock                                 = true
	descriptorBindingInlineUniformBlockUpdateAfterBind = true
	pipelineCreationCacheControl                       = true
	privateData                                        = true
	shaderDemoteToHelperInvocation                     = true
	shaderTerminateInvocation                          = true
	subgroupSizeControl                                = true
	computeFullSubgroups                               = true
	synchronization2                                   = true
	textureCompressionASTC_HDR                         = false
	shaderZeroInitializeWorkgroupMemory                = true
	dynamicRendering                                   = true
	shaderIntegerDotProduct                            = true
	maintenance4                                       = true

VkPhysicalDeviceVulkan14Features:
---------------------------------
	globalPriorityQuery                    = true
	shaderSubgroupRotate                   = true
	shaderSubgroupRotateClustered          = true
	shaderFloatControls2                   = true
	shaderExpectAssume                     = true
	rectangularLines                       = true
	bresenhamLines                         = true
	smoothLines                            = true
	stippledRectangularLines               = false
	stippledBresenhamLines                 = true
	stippledSmoothLines                    = false
	vertexAttributeInstanceRateDivisor     = true
	vertexAttributeInstanceRateZeroDivisor = true
	indexTypeUint8                         = true
	dynamicRenderingLocalRead              = true
	maintenance5                           = true
	maintenance6                           = true
	pipelineProtectedAccess                = false
	pipelineRobustness                     = true
	hostImageCopy                          = false
	pushDescriptor                         = true

VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR:
---------------------------------------------------------
	workgroupMemoryExplicitLayout                  = true
	workgroupMemoryExplicitLayoutScalarBlockLayout = true
	workgroupMemoryExplicitLayout8BitAccess        = true
	workgroupMemoryExplicitLayout16BitAccess       = true

VkPhysicalDeviceYcbcrImageArraysFeaturesEXT:
--------------------------------------------
	ycbcrImageArrays = true

VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT:
------------------------------------------------------
	zeroInitializeDeviceMemory = true

Video Profiles: count = 206
===========================
placeholder = H.264 Decode (4:2:0 8-bit) Baseline progressive
placeholder = H.264 Decode (4:2:0 8-bit) Main progressive
placeholder = H.264 Decode (4:2:0 8-bit) High progressive
placeholder = H.264 Decode (4:2:0 8-bit) Baseline interlaced (interleaved lines)
placeholder = H.264 Decode (4:2:0 8-bit) Main interlaced (interleaved lines)
placeholder = H.264 Decode (4:2:0 8-bit) High interlaced (interleaved lines)
placeholder = H.264 Decode (4:2:0 8-bit) Baseline interlaced (separate planes)
placeholder = H.264 Decode (4:2:0 8-bit) Main interlaced (separate planes)
placeholder = H.264 Decode (4:2:0 8-bit) High interlaced (separate planes)
placeholder = H.264 Decode (4:2:2 8-bit) Baseline progressive
placeholder = H.264 Decode (4:2:2 8-bit) Main progressive
placeholder = H.264 Decode (4:2:2 8-bit) High progressive
placeholder = H.264 Decode (4:2:2 8-bit) Baseline interlaced (interleaved lines)
placeholder = H.264 Decode (4:2:2 8-bit) Main interlaced (interleaved lines)
placeholder = H.264 Decode (4:2:2 8-bit) High interlaced (interleaved lines)
placeholder = H.264 Decode (4:2:2 8-bit) Baseline interlaced (separate planes)
placeholder = H.264 Decode (4:2:2 8-bit) Main interlaced (separate planes)
placeholder = H.264 Decode (4:2:2 8-bit) High interlaced (separate planes)
placeholder = H.264 Decode (4:4:4 8-bit) Baseline progressive
placeholder = H.264 Decode (4:4:4 8-bit) Main progressive
placeholder = H.264 Decode (4:4:4 8-bit) High progressive
placeholder = H.264 Decode (4:4:4 8-bit) Baseline interlaced (interleaved lines)
placeholder = H.264 Decode (4:4:4 8-bit) Main interlaced (interleaved lines)
placeholder = H.264 Decode (4:4:4 8-bit) High interlaced (interleaved lines)
placeholder = H.264 Decode (4:4:4 8-bit) Baseline interlaced (separate planes)
placeholder = H.264 Decode (4:4:4 8-bit) Main interlaced (separate planes)
placeholder = H.264 Decode (4:4:4 8-bit) High interlaced (separate planes)
placeholder = H.264 Decode (monochrome 8-bit) Baseline progressive
placeholder = H.264 Decode (monochrome 8-bit) Main progressive
placeholder = H.264 Decode (monochrome 8-bit) High progressive
placeholder = H.264 Decode (monochrome 8-bit) Baseline interlaced (interleaved lines)
placeholder = H.264 Decode (monochrome 8-bit) Main interlaced (interleaved lines)
placeholder = H.264 Decode (monochrome 8-bit) High interlaced (interleaved lines)
placeholder = H.264 Decode (monochrome 8-bit) Baseline interlaced (separate planes)
placeholder = H.264 Decode (monochrome 8-bit) Main interlaced (separate planes)
placeholder = H.264 Decode (monochrome 8-bit) High interlaced (separate planes)
placeholder = H.265 Decode (4:2:0 8-bit) Main
placeholder = H.265 Decode (4:2:0 8-bit) Main 10
placeholder = H.265 Decode (4:2:0 8-bit) Main Still Picture
placeholder = H.265 Decode (4:2:0 10-bit) Main
placeholder = H.265 Decode (4:2:0 10-bit) Main 10
placeholder = H.265 Decode (4:2:0 10-bit) Main Still Picture
placeholder = H.265 Decode (4:2:2 8-bit) Main
placeholder = H.265 Decode (4:2:2 8-bit) Main 10
placeholder = H.265 Decode (4:2:2 8-bit) Main Still Picture
placeholder = H.265 Decode (4:2:2 10-bit) Main
placeholder = H.265 Decode (4:2:2 10-bit) Main 10
placeholder = H.265 Decode (4:2:2 10-bit) Main Still Picture
placeholder = H.265 Decode (4:4:4 8-bit) Main
placeholder = H.265 Decode (4:4:4 8-bit) Main 10
placeholder = H.265 Decode (4:4:4 8-bit) Main Still Picture
placeholder = H.265 Decode (4:4:4 10-bit) Main
placeholder = H.265 Decode (4:4:4 10-bit) Main 10
placeholder = H.265 Decode (4:4:4 10-bit) Main Still Picture
placeholder = H.265 Decode (monochrome 8-bit) Main
placeholder = H.265 Decode (monochrome 8-bit) Main 10
placeholder = H.265 Decode (monochrome 8-bit) Main Still Picture
placeholder = H.265 Decode (monochrome 10-bit) Main
placeholder = H.265 Decode (monochrome 10-bit) Main 10
placeholder = H.265 Decode (monochrome 10-bit) Main Still Picture
placeholder = VP9 Decode (4:2:0 8-bit) Profile 0
placeholder = VP9 Decode (4:2:0 8-bit) Profile 2
placeholder = VP9 Decode (4:2:0 8:10-bit) Profile 0
placeholder = VP9 Decode (4:2:0 8:10-bit) Profile 2
placeholder = VP9 Decode (4:2:0 8:12-bit) Profile 0
placeholder = VP9 Decode (4:2:0 8:12-bit) Profile 2
placeholder = VP9 Decode (4:2:0 10:8-bit) Profile 0
placeholder = VP9 Decode (4:2:0 10:8-bit) Profile 2
placeholder = VP9 Decode (4:2:0 10-bit) Profile 0
placeholder = VP9 Decode (4:2:0 10-bit) Profile 2
placeholder = VP9 Decode (4:2:0 10:12-bit) Profile 0
placeholder = VP9 Decode (4:2:0 10:12-bit) Profile 2
placeholder = VP9 Decode (4:2:2 8-bit) Profile 0
placeholder = VP9 Decode (4:2:2 8-bit) Profile 2
placeholder = VP9 Decode (4:2:2 8:10-bit) Profile 0
placeholder = VP9 Decode (4:2:2 8:10-bit) Profile 2
placeholder = VP9 Decode (4:2:2 8:12-bit) Profile 0
placeholder = VP9 Decode (4:2:2 8:12-bit) Profile 2
placeholder = VP9 Decode (4:2:2 10:8-bit) Profile 0
placeholder = VP9 Decode (4:2:2 10:8-bit) Profile 2
placeholder = VP9 Decode (4:2:2 10-bit) Profile 0
placeholder = VP9 Decode (4:2:2 10-bit) Profile 2
placeholder = VP9 Decode (4:2:2 10:12-bit) Profile 0
placeholder = VP9 Decode (4:2:2 10:12-bit) Profile 2
placeholder = VP9 Decode (4:4:4 8-bit) Profile 0
placeholder = VP9 Decode (4:4:4 8-bit) Profile 2
placeholder = VP9 Decode (4:4:4 8:10-bit) Profile 0
placeholder = VP9 Decode (4:4:4 8:10-bit) Profile 2
placeholder = VP9 Decode (4:4:4 8:12-bit) Profile 0
placeholder = VP9 Decode (4:4:4 8:12-bit) Profile 2
placeholder = VP9 Decode (4:4:4 10:8-bit) Profile 0
placeholder = VP9 Decode (4:4:4 10:8-bit) Profile 2
placeholder = VP9 Decode (4:4:4 10-bit) Profile 0
placeholder = VP9 Decode (4:4:4 10-bit) Profile 2
placeholder = VP9 Decode (4:4:4 10:12-bit) Profile 0
placeholder = VP9 Decode (4:4:4 10:12-bit) Profile 2
placeholder = VP9 Decode (monochrome 8-bit) Profile 0
placeholder = VP9 Decode (monochrome 8-bit) Profile 2
placeholder = VP9 Decode (monochrome 10-bit) Profile 0
placeholder = VP9 Decode (monochrome 10-bit) Profile 2
placeholder = AV1 Decode (4:2:0 8-bit) Main with film grain support
placeholder = AV1 Decode (4:2:0 8-bit) Main without film grain support
placeholder = AV1 Decode (4:2:0 10-bit) Main with film grain support
placeholder = AV1 Decode (4:2:0 10-bit) Main without film grain support
placeholder = AV1 Decode (4:2:2 8-bit) Main with film grain support
placeholder = AV1 Decode (4:2:2 8-bit) Main without film grain support
placeholder = AV1 Decode (4:2:2 10-bit) Main with film grain support
placeholder = AV1 Decode (4:2:2 10-bit) Main without film grain support
placeholder = AV1 Decode (4:4:4 8-bit) Main with film grain support
placeholder = AV1 Decode (4:4:4 8-bit) Main without film grain support
placeholder = AV1 Decode (4:4:4 10-bit) Main with film grain support
placeholder = AV1 Decode (4:4:4 10-bit) Main without film grain support
placeholder = AV1 Decode (monochrome 8-bit) Main with film grain support
placeholder = AV1 Decode (monochrome 8-bit) Main without film grain support
placeholder = AV1 Decode (monochrome 10-bit) Main with film grain support
placeholder = AV1 Decode (monochrome 10-bit) Main without film grain support
placeholder = H.264 Encode (4:2:0 8-bit) Baseline
placeholder = H.264 Encode (4:2:0 8-bit) Main
placeholder = H.264 Encode (4:2:0 8-bit) High
placeholder = H.264 Encode (4:2:0 8:10-bit) Baseline
placeholder = H.264 Encode (4:2:0 8:10-bit) Main
placeholder = H.264 Encode (4:2:0 8:10-bit) High
placeholder = H.264 Encode (4:2:0 8:12-bit) Baseline
placeholder = H.264 Encode (4:2:0 8:12-bit) Main
placeholder = H.264 Encode (4:2:0 8:12-bit) High
placeholder = H.264 Encode (4:2:2 8-bit) Baseline
placeholder = H.264 Encode (4:2:2 8-bit) Main
placeholder = H.264 Encode (4:2:2 8-bit) High
placeholder = H.264 Encode (4:2:2 8:10-bit) Baseline
placeholder = H.264 Encode (4:2:2 8:10-bit) Main
placeholder = H.264 Encode (4:2:2 8:10-bit) High
placeholder = H.264 Encode (4:2:2 8:12-bit) Baseline
placeholder = H.264 Encode (4:2:2 8:12-bit) Main
placeholder = H.264 Encode (4:2:2 8:12-bit) High
placeholder = H.264 Encode (4:4:4 8-bit) Baseline
placeholder = H.264 Encode (4:4:4 8-bit) Main
placeholder = H.264 Encode (4:4:4 8-bit) High
placeholder = H.264 Encode (4:4:4 8:10-bit) Baseline
placeholder = H.264 Encode (4:4:4 8:10-bit) Main
placeholder = H.264 Encode (4:4:4 8:10-bit) High
placeholder = H.264 Encode (4:4:4 8:12-bit) Baseline
placeholder = H.264 Encode (4:4:4 8:12-bit) Main
placeholder = H.264 Encode (4:4:4 8:12-bit) High
placeholder = H.264 Encode (monochrome 8-bit) Baseline
placeholder = H.264 Encode (monochrome 8-bit) Main
placeholder = H.264 Encode (monochrome 8-bit) High
placeholder = H.265 Encode (4:2:0 8-bit) Main
placeholder = H.265 Encode (4:2:0 8-bit) Main 10
placeholder = H.265 Encode (4:2:0 8:10-bit) Main
placeholder = H.265 Encode (4:2:0 8:10-bit) Main 10
placeholder = H.265 Encode (4:2:0 8:12-bit) Main
placeholder = H.265 Encode (4:2:0 8:12-bit) Main 10
placeholder = H.265 Encode (4:2:0 10:8-bit) Main
placeholder = H.265 Encode (4:2:0 10:8-bit) Main 10
placeholder = H.265 Encode (4:2:0 10-bit) Main
placeholder = H.265 Encode (4:2:0 10-bit) Main 10
placeholder = H.265 Encode (4:2:0 10:12-bit) Main
placeholder = H.265 Encode (4:2:0 10:12-bit) Main 10
placeholder = H.265 Encode (4:2:2 8-bit) Main
placeholder = H.265 Encode (4:2:2 8-bit) Main 10
placeholder = H.265 Encode (4:2:2 8:10-bit) Main
placeholder = H.265 Encode (4:2:2 8:10-bit) Main 10
placeholder = H.265 Encode (4:2:2 8:12-bit) Main
placeholder = H.265 Encode (4:2:2 8:12-bit) Main 10
placeholder = H.265 Encode (4:2:2 10:8-bit) Main
placeholder = H.265 Encode (4:2:2 10:8-bit) Main 10
placeholder = H.265 Encode (4:2:2 10-bit) Main
placeholder = H.265 Encode (4:2:2 10-bit) Main 10
placeholder = H.265 Encode (4:2:2 10:12-bit) Main
placeholder = H.265 Encode (4:2:2 10:12-bit) Main 10
placeholder = H.265 Encode (4:4:4 8-bit) Main
placeholder = H.265 Encode (4:4:4 8-bit) Main 10
placeholder = H.265 Encode (4:4:4 8:10-bit) Main
placeholder = H.265 Encode (4:4:4 8:10-bit) Main 10
placeholder = H.265 Encode (4:4:4 8:12-bit) Main
placeholder = H.265 Encode (4:4:4 8:12-bit) Main 10
placeholder = H.265 Encode (4:4:4 10:8-bit) Main
placeholder = H.265 Encode (4:4:4 10:8-bit) Main 10
placeholder = H.265 Encode (4:4:4 10-bit) Main
placeholder = H.265 Encode (4:4:4 10-bit) Main 10
placeholder = H.265 Encode (4:4:4 10:12-bit) Main
placeholder = H.265 Encode (4:4:4 10:12-bit) Main 10
placeholder = H.265 Encode (monochrome 8-bit) Main
placeholder = H.265 Encode (monochrome 8-bit) Main 10
placeholder = H.265 Encode (monochrome 10-bit) Main
placeholder = H.265 Encode (monochrome 10-bit) Main 10
placeholder = AV1 Encode (4:2:0 8-bit) Main
placeholder = AV1 Encode (4:2:0 8:10-bit) Main
placeholder = AV1 Encode (4:2:0 8:12-bit) Main
placeholder = AV1 Encode (4:2:0 10:8-bit) Main
placeholder = AV1 Encode (4:2:0 10-bit) Main
placeholder = AV1 Encode (4:2:0 10:12-bit) Main
placeholder = AV1 Encode (4:2:2 8-bit) Main
placeholder = AV1 Encode (4:2:2 8:10-bit) Main
placeholder = AV1 Encode (4:2:2 8:12-bit) Main
placeholder = AV1 Encode (4:2:2 10:8-bit) Main
placeholder = AV1 Encode (4:2:2 10-bit) Main
placeholder = AV1 Encode (4:2:2 10:12-bit) Main
placeholder = AV1 Encode (4:4:4 8-bit) Main
placeholder = AV1 Encode (4:4:4 8:10-bit) Main
placeholder = AV1 Encode (4:4:4 8:12-bit) Main
placeholder = AV1 Encode (4:4:4 10:8-bit) Main
placeholder = AV1 Encode (4:4:4 10-bit) Main
placeholder = AV1 Encode (4:4:4 10:12-bit) Main
placeholder = AV1 Encode (monochrome 8-bit) Main
placeholder = AV1 Encode (monochrome 10-bit) Main

Offline

#4 2025-09-19 17:42:05

RogerRabbit
Member
Registered: 2022-12-18
Posts: 79

Re: [Solved] RetroArch does not run anymore in xcb mode

I removed retroarch.cfg to see what default it would give me, I have input_driver = "x" (might explain why I kept it, if it's the default and it worked out of the box) and video_driver="gl".
Trying to run retroarch on gl gives the exact same error about xbc (fallback then ?).

I tried to set the input_driver to sdl2 or udev, exact same error, I can't find what triggers the fallback... retroarch -v does not give me any more information.

This used to work as is, I did not launch retroarch for like 3 months, but I did not edit any related config file, I may have updated the system 3 ou 4 times during this perdiod.

Offline

#5 2025-09-19 20:35:36

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 24,960

Re: [Solved] RetroArch does not run anymore in xcb mode

Mhm, FWIW I can reproduce, seems to be a bug in 1.21: https://github.com/libretro/RetroArch/issues/17848 -- sorry for not verifying earlier, seems like a bug that it even tries to load Qt that prominently, that's like the fallback UI normally invoked via a special flag. try setting

desktop_menu_enable = "false"

in your retroarch conf.

Offline

#6 2025-09-20 01:37:53

RogerRabbit
Member
Registered: 2022-12-18
Posts: 79

Re: [Solved] RetroArch does not run anymore in xcb mode

Well I'm not sorry that I did not see your message earlier, because I went to the libretro discord where I got suggested to bisect the project to find the issue, which I never did, and now I know how to.
Here's the culprit :
https://github.com/libretro/RetroArch/c … 9e2a0b069c

Thank you for your help, the setting you just gave does make retroarch run even with the latest version.

Offline

Board footer

Powered by FluxBB