diff --git a/menu/cbs/menu_cbs_title.c b/menu/cbs/menu_cbs_title.c
index 3b1c025a12..ae95c40575 100644
--- a/menu/cbs/menu_cbs_title.c
+++ b/menu/cbs/menu_cbs_title.c
@@ -46,275 +46,6 @@ static void sanitize_to_string(char *s, const char *label, size_t len)
    replace_chars(s, '_', ' ');
 }
 
-static int fill_title(char *s, const char *title, const char *path, size_t len)
-{
-   fill_pathname_join_delim(s, title, path, ' ', len);
-   return 0;
-}
-
-static int action_get_title_disk_image_append(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, "Disk Append", path, len);
-}
-
-static int action_get_title_cheat_file_load(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, "Cheat File", path, len);
-}
-
-static int action_get_title_remap_file_load(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, "Remap File", path, len);
-}
-
-static int action_get_title_help(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HELP_LIST), len);
-   return 0;
-}
-
-static int action_get_title_overlay(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, "Overlay", path, len);
-}
-
-static int action_get_title_video_filter(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_FILTER), path, len);
-}
-
-static int action_get_title_cheat_directory(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s,
-         msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CHEAT_DATABASE_PATH), path, len);
-}
-
-static int action_get_title_core_directory(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LIBRETRO_DIR_PATH), path, len);
-}
-
-static int action_get_title_core_info_directory(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LIBRETRO_INFO_PATH), path, len);
-}
-
-static int action_get_title_audio_filter(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_AUDIO_FILTER_DIR), path, len);
-}
-
-static int action_get_title_font_path(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, "Font", path, len);
-}
-
-static int action_get_xmb_font_path(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, "Font", path, len);
-}
-
-static int action_get_title_video_shader_preset(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, "Shader Preset", path, len);
-}
-
-static int action_get_title_generic(char *s, size_t len, const char *path,
-      const char *text)
-{
-   struct string_list *list_path    = NULL;
-   
-   if (!string_is_empty(path))
-      list_path = string_split(path, "|");
-
-   if (list_path)
-   {
-      char elem0_path[PATH_MAX_LENGTH] = {0};
-      if (list_path->size > 0)
-         strlcpy(elem0_path, list_path->elems[0].data, sizeof(elem0_path));
-      string_list_free(list_path);
-      snprintf(s, len, "%s - %s", text,
-            (string_is_empty(elem0_path)) ? "" : path_basename(elem0_path));
-   }
-   else
-      strlcpy(s, "N/A", len);
-
-   return 0;
-}
-
-static int action_get_title_deferred_database_manager_list(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path,
-         msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DATABASE_SELECTION));
-}
-
-static int action_get_title_deferred_cursor_manager_list(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List");
-}
-
-static int action_get_title_list_rdb_entry_developer(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Developer ");
-}
-
-static int action_get_title_list_rdb_entry_publisher(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Publisher ");
-}
-
-static int action_get_title_list_rdb_entry_origin(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Origin ");
-}
-
-static int action_get_title_list_rdb_entry_franchise(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Franchise ");
-}
-
-static int action_get_title_list_rdb_entry_edge_magazine_rating(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Edge Magazine Rating ");
-}
-
-static int action_get_title_list_rdb_entry_edge_magazine_issue(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Edge Magazine Issue ");
-}
-
-static int action_get_title_list_rdb_entry_releasedate_by_month(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Releasedate By Month ");
-}
-
-static int action_get_title_list_rdb_entry_releasedate_by_year(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Releasedate By Year ");
-}
-
-static int action_get_title_list_rdb_entry_esrb_rating(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: ESRB Rating ");
-}
-
-static int action_get_title_list_rdb_entry_database_info(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Info ");
-}
-
-static int action_get_title_list_rdb_entry_elspa_rating(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Databsae Cursor List - Filter: ELSPA Rating ");
-}
-
-static int action_get_title_list_rdb_entry_pegi_rating(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: PEGI Rating ");
-}
-
-static int action_get_title_list_rdb_entry_cero_rating(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: CERO Rating ");
-}
-
-static int action_get_title_list_rdb_entry_bbfc_rating(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: BBFC Rating ");
-}
-
-static int action_get_title_list_rdb_entry_max_users(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Max Users ");
-}
-
-static int action_get_title_deferred_core_list(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   return fill_title(s, "Supported Cores", path, len);
-}
-
-static int action_get_title_default(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   snprintf(s, len, "%s %s", msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOAD_CONTENT), path);
-   return 0;
-}
-
-static int action_get_title_group_settings(const char *path, const char *label, 
-      unsigned menu_type, char *s, size_t len)
-{
-   if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MAIN_MENU)))
-      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MAIN_MENU), len);
-   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_HISTORY_TAB)))
-      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HISTORY_TAB), len);
-   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_SETTINGS_TAB)))
-      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SETTINGS_TAB), len);
-   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_PLAYLISTS_TAB)))
-      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLISTS_TAB), len);
-   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ADD_TAB)))
-      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ADD_TAB), len);
-   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_HORIZONTAL_MENU)))
-      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HORIZONTAL_MENU), len);
-   else
-   {
-      char elem0[PATH_MAX_LENGTH]    = {0};
-      char elem1[PATH_MAX_LENGTH]    = {0};
-      struct string_list *list_label = string_split(label, "|");
-
-      if (list_label)
-      {
-         if (list_label->size > 0)
-         {
-            strlcpy(elem0, list_label->elems[0].data, sizeof(elem0));
-            if (list_label->size > 1)
-               strlcpy(elem1, list_label->elems[1].data, sizeof(elem1));
-         }
-         string_list_free(list_label);
-      }
-
-      strlcpy(s, elem0, len);
-
-      if (!string_is_empty(elem1))
-      {
-         strlcat(s, " - ", len);
-         strlcat(s, elem1, len);
-      }
-   }
-
-   return 0;
-}
-
 static int action_get_user_accounts_cheevos_list(const char *path, const char *label, 
       unsigned menu_type, char *s, size_t len)
 {
@@ -546,6 +277,91 @@ static int action_get_title_action_generic(const char *path, const char *label,
    return 0;
 }
 
+static int fill_title(char *s, const char *title, const char *path, size_t len)
+{
+   fill_pathname_join_delim(s, title, path, ' ', len);
+   return 0;
+}
+
+static int action_get_title_disk_image_append(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, "Disk Append", path, len);
+}
+
+static int action_get_title_cheat_file_load(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, "Cheat File", path, len);
+}
+
+static int action_get_title_remap_file_load(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, "Remap File", path, len);
+}
+
+static int action_get_title_overlay(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, "Overlay", path, len);
+}
+
+static int action_get_title_video_filter(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_FILTER), path, len);
+}
+
+static int action_get_title_cheat_directory(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s,
+         msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CHEAT_DATABASE_PATH), path, len);
+}
+
+static int action_get_title_core_directory(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LIBRETRO_DIR_PATH), path, len);
+}
+
+static int action_get_title_core_info_directory(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LIBRETRO_INFO_PATH), path, len);
+}
+
+static int action_get_title_audio_filter(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_AUDIO_FILTER_DIR), path, len);
+}
+
+static int action_get_title_font_path(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, "Font", path, len);
+}
+
+static int action_get_xmb_font_path(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, "Font", path, len);
+}
+
+static int action_get_title_video_shader_preset(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, "Shader Preset", path, len);
+}
+
+static int action_get_title_deferred_core_list(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return fill_title(s, "Supported Cores", path, len);
+}
+
 static int action_get_title_configurations(const char *path, const char *label, 
       unsigned menu_type, char *s, size_t len)
 {
@@ -713,6 +529,191 @@ static int action_get_title_menu(const char *path, const char *label,
          msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MENU_SETTINGS), path, len);
 }
 
+static int action_get_title_help(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HELP_LIST), len);
+   return 0;
+}
+
+static int action_get_title_generic(char *s, size_t len, const char *path,
+      const char *text)
+{
+   struct string_list *list_path    = NULL;
+   
+   if (!string_is_empty(path))
+      list_path = string_split(path, "|");
+
+   if (list_path)
+   {
+      char elem0_path[PATH_MAX_LENGTH] = {0};
+      if (list_path->size > 0)
+         strlcpy(elem0_path, list_path->elems[0].data, sizeof(elem0_path));
+      string_list_free(list_path);
+      snprintf(s, len, "%s - %s", text,
+            (string_is_empty(elem0_path)) ? "" : path_basename(elem0_path));
+   }
+   else
+      strlcpy(s, "N/A", len);
+
+   return 0;
+}
+
+static int action_get_title_deferred_database_manager_list(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path,
+         msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DATABASE_SELECTION));
+}
+
+static int action_get_title_deferred_cursor_manager_list(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List");
+}
+
+static int action_get_title_list_rdb_entry_developer(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Developer ");
+}
+
+static int action_get_title_list_rdb_entry_publisher(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Publisher ");
+}
+
+static int action_get_title_list_rdb_entry_origin(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Origin ");
+}
+
+static int action_get_title_list_rdb_entry_franchise(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Franchise ");
+}
+
+static int action_get_title_list_rdb_entry_edge_magazine_rating(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Edge Magazine Rating ");
+}
+
+static int action_get_title_list_rdb_entry_edge_magazine_issue(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Edge Magazine Issue ");
+}
+
+static int action_get_title_list_rdb_entry_releasedate_by_month(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Releasedate By Month ");
+}
+
+static int action_get_title_list_rdb_entry_releasedate_by_year(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Releasedate By Year ");
+}
+
+static int action_get_title_list_rdb_entry_esrb_rating(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: ESRB Rating ");
+}
+
+static int action_get_title_list_rdb_entry_database_info(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Info ");
+}
+
+static int action_get_title_list_rdb_entry_elspa_rating(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Databsae Cursor List - Filter: ELSPA Rating ");
+}
+
+static int action_get_title_list_rdb_entry_pegi_rating(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: PEGI Rating ");
+}
+
+static int action_get_title_list_rdb_entry_cero_rating(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: CERO Rating ");
+}
+
+static int action_get_title_list_rdb_entry_bbfc_rating(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: BBFC Rating ");
+}
+
+static int action_get_title_list_rdb_entry_max_users(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   return action_get_title_generic(s, len, path, "Database Cursor List - Filter: Max Users ");
+}
+
+static int action_get_title_default(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   snprintf(s, len, "%s %s", msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOAD_CONTENT), path);
+   return 0;
+}
+
+static int action_get_title_group_settings(const char *path, const char *label, 
+      unsigned menu_type, char *s, size_t len)
+{
+   if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_MAIN_MENU)))
+      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MAIN_MENU), len);
+   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_HISTORY_TAB)))
+      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HISTORY_TAB), len);
+   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_SETTINGS_TAB)))
+      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SETTINGS_TAB), len);
+   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_PLAYLISTS_TAB)))
+      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLISTS_TAB), len);
+   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ADD_TAB)))
+      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ADD_TAB), len);
+   else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_HORIZONTAL_MENU)))
+      strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HORIZONTAL_MENU), len);
+   else
+   {
+      char elem0[PATH_MAX_LENGTH]    = {0};
+      char elem1[PATH_MAX_LENGTH]    = {0};
+      struct string_list *list_label = string_split(label, "|");
+
+      if (list_label)
+      {
+         if (list_label->size > 0)
+         {
+            strlcpy(elem0, list_label->elems[0].data, sizeof(elem0));
+            if (list_label->size > 1)
+               strlcpy(elem1, list_label->elems[1].data, sizeof(elem1));
+         }
+         string_list_free(list_label);
+      }
+
+      strlcpy(s, elem0, len);
+
+      if (!string_is_empty(elem1))
+      {
+         strlcat(s, " - ", len);
+         strlcat(s, elem1, len);
+      }
+   }
+
+   return 0;
+}
+
+
 static int action_get_title_input_settings(const char *path, const char *label, 
       unsigned menu_type, char *s, size_t len)
 {