From ab413672a92a0d6c26485b0707fcb5996ec5b26f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-Andr=C3=A9=20Santoni?= Date: Thu, 4 Feb 2016 17:55:08 +0700 Subject: [PATCH] Add support for TGDB Rating --- database_info.c | 4 ++++ database_info.h | 1 + libretro-db/c_converter.c | 1 + menu/intl/menu_hash_us.c | 2 ++ menu/intl/menu_hash_uspseudo.c | 2 ++ menu/menu_displaylist.c | 8 ++++++++ menu/menu_hash.h | 1 + 7 files changed, 19 insertions(+) diff --git a/database_info.c b/database_info.c index 9701033767..cba0b2b07e 100644 --- a/database_info.c +++ b/database_info.c @@ -67,6 +67,7 @@ #define DB_CURSOR_EDGE_MAGAZINE_RATING 0xd30dc4feU #define DB_CURSOR_EDGE_MAGAZINE_ISSUE 0xa0f30d42U #define DB_CURSOR_FAMITSU_MAGAZINE_RATING 0x0a50ca62U +#define DB_CURSOR_TGDB_RATING 0x8d61458aU #define DB_CURSOR_MAX_USERS 0x1084ff77U #define DB_CURSOR_RELEASEDATE_MONTH 0x790ad76cU #define DB_CURSOR_RELEASEDATE_YEAR 0x7fd06ed7U @@ -308,6 +309,9 @@ static int database_cursor_iterate(libretrodb_cursor_t *cur, case DB_CURSOR_FAMITSU_MAGAZINE_RATING: db_info->famitsu_magazine_rating = val->val.uint_; break; + case DB_CURSOR_TGDB_RATING: + db_info->tgdb_rating = val->val.uint_; + break; case DB_CURSOR_MAX_USERS: db_info->max_users = val->val.uint_; break; diff --git a/database_info.h b/database_info.h index 7bbc68a46f..b511fedc17 100644 --- a/database_info.h +++ b/database_info.h @@ -85,6 +85,7 @@ typedef struct unsigned max_users; unsigned releasemonth; unsigned releaseyear; + unsigned tgdb_rating; int analog_supported; int rumble_supported; int coop_supported; diff --git a/libretro-db/c_converter.c b/libretro-db/c_converter.c index abb0f6bfde..c7d5d0eea4 100644 --- a/libretro-db/c_converter.c +++ b/libretro-db/c_converter.c @@ -565,6 +565,7 @@ dat_converter_rdb_mappings_t rdb_mappings[] = {"origin", "origin", DAT_CONVERTER_RDB_TYPE_STRING}, {"coop", "coop", DAT_CONVERTER_RDB_TYPE_UINT}, + {"tgdb_rating", "tgdb_rating", DAT_CONVERTER_RDB_TYPE_UINT}, {"rom.crc", "crc", DAT_CONVERTER_RDB_TYPE_HEX}, {"rom.md5", "md5", DAT_CONVERTER_RDB_TYPE_HEX}, diff --git a/menu/intl/menu_hash_us.c b/menu/intl/menu_hash_us.c index a2795809c9..d896415021 100644 --- a/menu/intl/menu_hash_us.c +++ b/menu/intl/menu_hash_us.c @@ -494,6 +494,8 @@ static const char *menu_hash_to_str_us_label(uint32_t hash) return "rdb_entry_edge_magazine_review"; case MENU_LABEL_RDB_ENTRY_FAMITSU_MAGAZINE_RATING: return "rdb_entry_famitsu_magazine_rating"; + case MENU_LABEL_RDB_ENTRY_TGDB_RATING: + return "rdb_entry_tgdb_rating"; case MENU_LABEL_RDB_ENTRY_EDGE_MAGAZINE_ISSUE: return "rdb_entry_edge_magazine_issue"; case MENU_LABEL_RDB_ENTRY_RELEASE_MONTH: diff --git a/menu/intl/menu_hash_uspseudo.c b/menu/intl/menu_hash_uspseudo.c index b0384b83a3..6c06d553bc 100644 --- a/menu/intl/menu_hash_uspseudo.c +++ b/menu/intl/menu_hash_uspseudo.c @@ -429,6 +429,8 @@ static const char *menu_hash_to_str_us_label(uint32_t hash) return "rdb_entry_edge_magazine_review"; case MENU_LABEL_RDB_ENTRY_FAMITSU_MAGAZINE_RATING: return "rdb_entry_famitsu_magazine_rating"; + case MENU_LABEL_RDB_ENTRY_TGDB_RATING: + return "rdb_entry_tgdb_rating"; case MENU_LABEL_RDB_ENTRY_EDGE_MAGAZINE_ISSUE: return "rdb_entry_edge_magazine_issue"; case MENU_LABEL_RDB_ENTRY_RELEASE_MONTH: diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index 598a353ef6..d3ec2ae631 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -1305,6 +1305,14 @@ static int menu_displaylist_parse_database_entry(menu_displaylist_info_t *info) info->path, info->list) == -1) goto error; } + if (db_info_entry->tgdb_rating) + { + if (create_string_list_rdb_entry_int("TGDB Rating", + menu_hash_to_str(MENU_LABEL_RDB_ENTRY_TGDB_RATING), + db_info_entry->tgdb_rating, + info->path, info->list) == -1) + goto error; + } if (db_info_entry->famitsu_magazine_rating) { if (create_string_list_rdb_entry_int("Famitsu Magazine Rating", diff --git a/menu/menu_hash.h b/menu/menu_hash.h index 0bd31d3b0a..2593fcd558 100644 --- a/menu/menu_hash.h +++ b/menu/menu_hash.h @@ -578,6 +578,7 @@ extern "C" { #define MENU_LABEL_RDB_ENTRY_EDGE_MAGAZINE_ISSUE 0xd5706415U #define MENU_LABEL_RDB_ENTRY_EDGE_MAGAZINE_REVIEW 0x977f6fdeU #define MENU_LABEL_RDB_ENTRY_FAMITSU_MAGAZINE_RATING 0x01a50315U +#define MENU_LABEL_RDB_ENTRY_TGDB_RATING 0x225a9d72U #define MENU_LABEL_RDB_ENTRY_RELEASE_MONTH 0xad2f2c54U #define MENU_LABEL_VALUE_RDB_ENTRY_RELEASE_MONTH 0xb68af36aU #define MENU_LABEL_RDB_ENTRY_RELEASE_YEAR 0x14c9c6bfU