X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=common%2Fmenu.c;h=4a01896e23f40b7b5e2cbb5860586fba7ca03d60;hb=4858c6338ba7ec5a9061ea9b7505acde098c03d9;hp=80fdff81d33376d4ac69916c93abf8370754eeaa;hpb=053bef765a5dba9d5a050c0944676e96412e293d;p=libpicofe.git diff --git a/common/menu.c b/common/menu.c index 80fdff8..4a01896 100644 --- a/common/menu.c +++ b/common/menu.c @@ -455,8 +455,9 @@ static void me_draw(const menu_entry *entries, int sel, void (*draw_more)(void)) plat_video_menu_end(); } -static int me_process(menu_entry *entry, int is_next) +static int me_process(menu_entry *entry, int is_next, int is_lr) { + int c; switch (entry->beh) { case MB_OPT_ONOFF: @@ -465,7 +466,8 @@ static int me_process(menu_entry *entry, int is_next) return 1; case MB_OPT_RANGE: case MB_OPT_CUSTRANGE: - *(int *)entry->var += is_next ? 1 : -1; + c = is_lr ? 10 : 1; + *(int *)entry->var += is_next ? c : -c; if (*(int *)entry->var < (int)entry->min) *(int *)entry->var = (int)entry->max; if (*(int *)entry->var > (int)entry->max) @@ -524,8 +526,9 @@ static void me_loop(menu_entry *menu, int *menu_sel, void (*draw_more)(void)) if ((inp & (PBTN_L|PBTN_R)) == (PBTN_L|PBTN_R)) debug_menu_loop(); - if (inp & (PBTN_LEFT|PBTN_RIGHT)) { /* multi choice */ - if (me_process(&menu[sel], (inp & PBTN_RIGHT) ? 1 : 0)) + if (inp & (PBTN_LEFT|PBTN_RIGHT|PBTN_L|PBTN_R)) { /* multi choice */ + if (me_process(&menu[sel], (inp & (PBTN_RIGHT|PBTN_R)) ? 1 : 0, + inp & (PBTN_L|PBTN_R))) continue; } @@ -1447,6 +1450,7 @@ static menu_entry e_menu_adv_options[] = mee_onoff ("gzip savestates", MA_OPT2_GZIP_STATES, currentConfig.EmuOpt, EOPT_GZIP_SAVES), mee_onoff ("Don't save last used ROM", MA_OPT2_NO_LAST_ROM, currentConfig.EmuOpt, EOPT_NO_AUTOSVCFG), mee_onoff ("Disable idle loop patching",MA_OPT2_NO_IDLE_LOOPS,PicoOpt, POPT_DIS_IDLE_DET), + mee_onoff ("Disable frame limiter", MA_OPT2_NO_FRAME_LIMIT,currentConfig.EmuOpt, EOPT_NO_FRMLIMIT), MENU_GP2X_OPTIONS_ADV mee_end, };