From e6f7b709c4dedbd3eceb6dce1988cd9fd27385c0 Mon Sep 17 00:00:00 2001 From: Themaister Date: Thu, 4 Apr 2013 14:13:42 +0200 Subject: [PATCH] Check for updated values, log options. --- core_options.c | 9 +++++++++ libretro-test/libretro-test.c | 29 +++++++++++++++++++---------- 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/core_options.c b/core_options.c index 50ef1ed921..d9f10906cb 100644 --- a/core_options.c +++ b/core_options.c @@ -110,6 +110,15 @@ static bool parse_variable(core_option_manager_t *opt, size_t index, const struc } free(value); + + RARCH_LOG("Core option:\n"); + RARCH_LOG("\tDescription: %s\n", option->desc); + RARCH_LOG("\tKey: %s\n", option->key); + RARCH_LOG("\tCurrent value: %s\n", core_option_get_val(opt, index)); + RARCH_LOG("\tPossible values:\n"); + for (size_t i = 0; i < option->vals->size; i++) + RARCH_LOG("\t\t%s\n", option->vals->elems[i].data); + return true; } diff --git a/libretro-test/libretro-test.c b/libretro-test/libretro-test.c index 1403fbef31..8819cee086 100644 --- a/libretro-test/libretro-test.c +++ b/libretro-test/libretro-test.c @@ -206,11 +206,29 @@ static void render_audio(void) phase %= 100; } +static void check_variables(void) +{ + struct retro_variable var = {0}; + var.key = "test_opt0"; + if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) + fprintf(stderr, "Key -> Val: %s -> %s.\n", var.key, var.value); + var.key = "test_opt1"; + if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) + fprintf(stderr, "Key -> Val: %s -> %s.\n", var.key, var.value); + var.key = "test_opt2"; + if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) + fprintf(stderr, "Key -> Val: %s -> %s.\n", var.key, var.value); +} + void retro_run(void) { update_input(); render_checkered(); render_audio(); + + bool updated = false; + if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE_UPDATE, &updated) && updated) + check_variables(); } static void keyboard_cb(bool down, unsigned keycode, @@ -242,16 +260,7 @@ bool retro_load_game(const struct retro_game_info *info) struct retro_keyboard_callback cb = { keyboard_cb }; environ_cb(RETRO_ENVIRONMENT_SET_KEYBOARD_CALLBACK, &cb); - struct retro_variable var = {0}; - var.key = "test_opt0"; - if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) - fprintf(stderr, "Key -> Val: %s -> %s.\n", var.key, var.value); - var.key = "test_opt1"; - if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) - fprintf(stderr, "Key -> Val: %s -> %s.\n", var.key, var.value); - var.key = "test_opt2"; - if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) - fprintf(stderr, "Key -> Val: %s -> %s.\n", var.key, var.value); + check_variables(); (void)info; return true;