diff options
author | neonloop | 2021-08-14 22:39:49 +0000 |
---|---|---|
committer | neonloop | 2021-08-14 22:39:49 +0000 |
commit | 316597f18ebb4758df25c8de2810d6d130ad00be (patch) | |
tree | f3dce1f6eb2695de7b0ed18db104e2238e53686d /config.c | |
parent | 890159f001a253c64faf5b95357032c8757fd98c (diff) | |
download | picoarch-316597f18ebb4758df25c8de2810d6d130ad00be.tar.gz picoarch-316597f18ebb4758df25c8de2810d6d130ad00be.tar.bz2 picoarch-316597f18ebb4758df25c8de2810d6d130ad00be.zip |
Adds auto-frameskip to pcsx_rearmed
Diffstat (limited to 'config.c')
-rw-r--r-- | config.c | 20 |
1 files changed, 11 insertions, 9 deletions
@@ -75,24 +75,26 @@ static void parse_num_val(uint32_t *cval, const char *src) *cval = val; } -static char *config_find_value(const char* cfg, const char *key) { - char *tmp; +static const char *config_find_value(const char* cfg, const char *key) { + const char *tmp = cfg; + + while ((tmp = strstr(tmp, key))) { + tmp += strlen(key); + if (strncmp(tmp, " = ", 3) == 0) + break; + }; - tmp = strstr(cfg, key); if (tmp == NULL) return NULL; - tmp += strlen(key); - if (strncmp(tmp, " = ", 3) != 0) - return NULL; - tmp += 3; + tmp += 3; return tmp; } void config_read(const char* cfg) { for (size_t i = 0; i < array_size(config_data); i++) { - char *tmp = config_find_value(cfg, config_data[i].name); + const char *tmp = config_find_value(cfg, config_data[i].name); if (!tmp) continue; @@ -110,7 +112,7 @@ void config_read(const char* cfg) if (entry->blocked) continue; - char *tmp = config_find_value(cfg, entry->key); + const char *tmp = config_find_value(cfg, entry->key); if (!tmp) continue; |