Indicate that multitap requires restart and cleanup
[pcsx_rearmed.git] / frontend / libretro_core_options.h
index 81a3ac2..3f589cc 100644 (file)
@@ -98,125 +98,67 @@ struct retro_core_option_definition option_defs_us[] = {
       "disabled",
    },
    {
-      "pcsx_rearmed_pad1type",
-      "Pad 1 Type",
-      "Pad type for player 1",
+      "pcsx_rearmed_show_other_input_settings",
+      "Show other input settings",
+      "Shows or hides other inputs settings like multitaps, player 3-8 ports, analog fine-tunings, etc.",
       {
-         { "standard",  NULL },
-         { "analog",    NULL },
-         { "dualshock", NULL },
-         { "negcon",    NULL },
-         { "guncon",    NULL },
-         { "none",      NULL },
-         { NULL, NULL },
-      },
-      "standard",
-   },
-   {
-      "pcsx_rearmed_pad2type",
-      "Pad 2 Type",
-      "Pad type for player 2",
-      {
-         { "standard",  NULL },
-         { "analog",    NULL },
-         { "dualshock", NULL },
-         { "negcon",    NULL },
-         { "guncon",    NULL },
-         { "none",      NULL },
-         { NULL, NULL },
-      },
-      "standard",
-   },
-   {
-      "pcsx_rearmed_pad3type",
-      "Pad 3 Type",
-      "Pad type for player 3",
-      {
-         { "standard",  NULL },
-         { "analog",    NULL },
-         { "dualshock", NULL },
-         { "negcon",    NULL },
-         { "guncon",    NULL },
-         { "none",      NULL },
-         { NULL, NULL },
-      },
-      "none",
-   },
-   {
-      "pcsx_rearmed_pad4type",
-      "Pad 4 Type",
-      "Pad type for player 4",
-      {
-         { "standard",  NULL },
-         { "analog",    NULL },
-         { "dualshock", NULL },
-         { "negcon",    NULL },
-         { "guncon",    NULL },
-         { "none",      NULL },
+         { "disabled", NULL },
+         { "enabled",  NULL },
          { NULL, NULL },
       },
-      "none",
+      "disabled",
    },
    {
-      "pcsx_rearmed_pad5type",
-      "Pad 5 Type",
-      "Pad type for player 5",
-      {
-         { "standard",  NULL },
-         { "analog",    NULL },
-         { "dualshock", NULL },
-         { "negcon",    NULL },
-         { "guncon",    NULL },
-         { "none",      NULL },
-         { NULL, NULL },
-      },
-      "none",
-   },{
-      "pcsx_rearmed_pad6type",
-      "Pad 6 Type",
-      "Pad type for player 6",
-      {
-         { "standard",  NULL },
-         { "analog",    NULL },
-         { "dualshock", NULL },
-         { "negcon",    NULL },
-         { "guncon",    NULL },
-         { "none",      NULL },
-         { NULL, NULL },
-      },
-      "none",
-   },{
-      "pcsx_rearmed_pad7type",
-      "Pad 7 Type",
-      "Pad type for player 7",
+      "pcsx_rearmed_input_sensitivity",
+      "Emulated Mouse Sensitivity",
+      "Adjust responsiveness when using mouse controller (Default 1.0).",
       {
-         { "standard",  NULL },
-         { "analog",    NULL },
-         { "dualshock", NULL },
-         { "negcon",    NULL },
-         { "guncon",    NULL },
-         { "none",      NULL },
-         { NULL, NULL },
-      },
-      "none",
-   },{
-      "pcsx_rearmed_pad8type",
-      "Pad 8 Type",
-      "Pad type for player 8",
-      {
-         { "standard",  NULL },
-         { "analog",    NULL },
-         { "dualshock", NULL },
-         { "negcon",    NULL },
-         { "guncon",    NULL },
-         { "none",      NULL },
-         { NULL, NULL },
+         { "0.05", NULL },
+         { "0.10", NULL },
+         { "0.15", NULL },
+         { "0.20", NULL },
+         { "0.25", NULL },
+         { "0.30", NULL },
+         { "0.35", NULL },
+         { "0.40", NULL },
+         { "0.45", NULL },
+         { "0.50", NULL },
+         { "0.55", NULL },
+         { "0.60", NULL },
+         { "0.65", NULL },
+         { "0.70", NULL },
+         { "0.75", NULL },
+         { "0.80", NULL },
+         { "0.85", NULL },
+         { "0.90", NULL },
+         { "0.95", NULL },
+         { "1.00", NULL },
+         { "1.05", NULL },
+         { "1.10", NULL },
+         { "1.15", NULL },
+         { "1.20", NULL },
+         { "1.25", NULL },
+         { "1.30", NULL },
+         { "1.35", NULL },
+         { "1.40", NULL },
+         { "1.45", NULL },
+         { "1.50", NULL },
+         { "1.55", NULL },
+         { "1.60", NULL },
+         { "1.65", NULL },
+         { "1.70", NULL },
+         { "1.75", NULL },
+         { "1.80", NULL },
+         { "1.85", NULL },
+         { "1.90", NULL },
+         { "1.95", NULL },
+         { "2.00", NULL },
       },
-      "none",
+      "1.00",
    },
    {
       "pcsx_rearmed_multitap1",
-      "Multitap 1",
+      "Multitap 1 (Restart)",
       "Enables/Disables multitap on port 1, allowing upto 5 players in games that permit it.",
       {
          { "auto",     NULL },
@@ -228,7 +170,7 @@ struct retro_core_option_definition option_defs_us[] = {
    },
    {
       "pcsx_rearmed_multitap2",
-      "Multitap 2",
+      "Multitap 2 (Restart)",
       "Enables/Disables multitap on port 2, allowing up to 8 players in games that permit it. Multitap 1 has to be enabled for this to work.",
       {
          { "auto",     NULL },
@@ -266,6 +208,17 @@ struct retro_core_option_definition option_defs_us[] = {
       },
       "linear",
    },
+   {
+      "pcsx_rearmed_analog_axis_modifier",
+      "Analog axis bounds.",
+      "Range bounds for analog axis. Square bounds help controllers with highly circular ranges that are unable to fully saturate the x and y axis at 45degree deflections.",
+      {
+         { "circle", NULL },
+         { "square", NULL },
+         { NULL, NULL },
+      },
+      "circle",
+   },
    {
       "pcsx_rearmed_vibration",
       "Enable Vibration",
@@ -530,10 +483,14 @@ struct retro_core_option_definition option_defs_us[] = {
          { "enabled",  NULL },
          { NULL, NULL },
       },
+#if defined HAVE_LIBNX || defined _3DS
+         "disabled",
+#else
       "enabled",
+#endif
    },
 
-#ifndef DRC_DISABLE
+#if defined(LIGHTREC) || defined(NEW_DYNAREC)
    {
       "pcsx_rearmed_drc",
       "Dynamic Recompiler",
@@ -545,10 +502,13 @@ struct retro_core_option_definition option_defs_us[] = {
       },
       "enabled",
    },
+#endif /* LIGHTREC || NEW_DYNAREC */
+
+#ifdef NEW_DYNAREC
    {
       "pcsx_rearmed_psxclock",
       "PSX CPU Clock",
-#ifdef HAVE_PRE_ARMV7
+#if defined(HAVE_PRE_ARMV7) && !defined(_3DS)
       "Overclock or underclock the PSX clock. Default is 50",
 #else
       "Overclock or underclock the PSX clock. Default is 57",
@@ -627,15 +587,15 @@ struct retro_core_option_definition option_defs_us[] = {
          { "100", NULL },
          { NULL, NULL },
       },
-#ifdef HAVE_PRE_ARMV7
+#if defined(HAVE_PRE_ARMV7) && !defined(_3DS)
       "50",
 #else
       "57",
 #endif
    },
-#endif /* DRC_DISABLE */
+#endif /* NEW_DYNAREC */
 
-#ifdef __ARM_NEON__
+#ifdef GPU_NEON
    {
       "pcsx_rearmed_neon_interlace_enable",
       "Enable Interlacing Mode",
@@ -669,7 +629,7 @@ struct retro_core_option_definition option_defs_us[] = {
       },
       "disabled",
    },
-#endif /* __ARM_NEON__ */
+#endif /* GPU_NEON */
 
    {
       "pcsx_rearmed_duping_enable",
@@ -808,6 +768,101 @@ struct retro_core_option_definition option_defs_us[] = {
    },
 #endif
 
+    /* GPU UNAI Advanced Options */
+#ifdef GPU_UNAI
+   {
+      "pcsx_rearmed_show_gpu_unai_settings",
+      "Advance GPU UNAI/PCSX4All Settings",
+      "Shows or hides advanced gpu settings. A core restart might be needed for settings to take effect. NOTE: Quick Menu must be toggled for this setting to take effect.",
+      {
+         { "disabled", NULL },
+         { "enabled",  NULL },
+         { NULL, NULL},
+      },
+      "disabled",
+   },
+   {
+      "pcsx_rearmed_gpu_unai_blending",
+      "(GPU) Enable Blending",
+      NULL,
+      {
+         { "disabled", NULL },
+         { "enabled",  NULL },
+         { NULL, NULL},
+      },
+      "enabled",
+   },
+   {
+      "pcsx_rearmed_gpu_unai_lighting",
+      "(GPU) Enable Lighting",
+      NULL,
+      {
+         { "disabled", NULL },
+         { "enabled",  NULL },
+         { NULL, NULL},
+      },
+      "enabled",
+   },
+   {
+      "pcsx_rearmed_gpu_unai_fast_lighting",
+      "(GPU) Enable Fast Lighting",
+      NULL,
+      {
+         { "disabled", NULL },
+         { "enabled",  NULL },
+         { NULL, NULL},
+      },
+      "disabled",
+   },
+   {
+      "pcsx_rearmed_gpu_unai_ilace_force",
+      "(GPU) Enable Forced Interlace",
+      NULL,
+      {
+         { "disabled", NULL },
+         { "enabled",  NULL },
+         { NULL, NULL},
+      },
+      "disabled",
+   },
+   {
+      "pcsx_rearmed_gpu_unai_pixel_skip",
+      "(GPU) Enable Pixel Skip",
+      NULL,
+      {
+         { "disabled", NULL },
+         { "enabled",  NULL },
+         { NULL, NULL},
+      },
+      "disabled",
+   },
+   {
+      "pcsx_rearmed_gpu_unai_scale_hires",
+      "(GPU) Enable Hi-Res Downscaling",
+      "When enabled, will scale hi-res modes to 320x240, skipping unrendered pixels.",
+      {
+         { "disabled", NULL },
+         { "enabled",  NULL },
+         { NULL, NULL},
+      },
+      "disabled",
+   },
+#endif /* GPU UNAI Advanced Settings */
+#ifdef THREAD_RENDERING
+   {
+      "pcsx_rearmed_gpu_thread_rendering",
+      "Threaded Rendering",
+      "When enabled, runs GPU commands in a thread. Sync waits for drawing to finish before vsync. Async will not wait unless there's another frame behind it.",
+      {
+         { "disabled", NULL },
+         { "sync",  NULL },
+         { "async",  NULL },
+         { NULL, NULL},
+      },
+      "disabled",
+   },
+#endif
+
    {
       "pcsx_rearmed_show_bios_bootlogo",
       "Show Bios Bootlogo",
@@ -876,7 +931,19 @@ struct retro_core_option_definition option_defs_us[] = {
       },
       "disabled",
    },
-
+#ifndef _WIN32
+   {
+      "pcsx_rearmed_async_cd",
+      "CD Access Method (Restart)",
+      "Select method used to read data from content disk images. 'Synchronous' mimics original hardware. 'Asynchronous' can reduce stuttering on devices with slow storage.",
+      {
+         { "sync", "Synchronous" },
+         { "async",  "Asynchronous" },
+         { NULL, NULL},
+      },
+      "sync",
+   },
+#endif
    /* ADVANCED OPTIONS */
    {
       "pcsx_rearmed_noxadecoding",
@@ -900,8 +967,19 @@ struct retro_core_option_definition option_defs_us[] = {
       },
       "enabled",
    },
+   {
+      "pcsx_rearmed_spuirq",
+      "SPU IRQ Always Enabled",
+      "Compatibility tweak, should be left to off in most cases.",
+      {
+         { "disabled", NULL },
+         { "enabled",  NULL },
+         { NULL, NULL },
+      },
+      "disabled",
+   },
 
-#ifndef DRC_DISABLE
+#ifdef NEW_DYNAREC
    {
       "pcsx_rearmed_nosmccheck",
       "(Speed Hack) Disable SMC Checks",
@@ -935,7 +1013,7 @@ struct retro_core_option_definition option_defs_us[] = {
       },
       "disabled",
    },
-#endif /* DRC_DISABLE */
+#endif /* NEW_DYNAREC */
 
    { NULL, NULL, NULL, {{0}}, NULL },
 };