diff --git a/adl.c b/adl.c index b2c00fc8..b68fa5d4 100644 --- a/adl.c +++ b/adl.c @@ -1198,34 +1198,34 @@ void change_autosettings(int gpu) wlogprint("Toggle [F]an auto [G]PU auto\nChange [T]arget [O]verheat [C]utoff\n"); wlogprint("Or press any other key to continue\n"); input = getch(); - if (!strncasecmp(&input, "f", 1)) { + if (INPUTEQ(f)) { ga->autofan ^= true; wlogprint("Fan autotune is now %s\n", ga->autofan ? "enabled" : "disabled"); if (!ga->autofan) { wlogprint("Resetting fan to startup settings\n"); set_defaultfan(gpu); } - } else if (!strncasecmp(&input, "g", 1)) { + } else if (INPUTEQ(g)) { ga->autoengine ^= true; wlogprint("GPU engine clock autotune is now %s\n", ga->autoengine ? "enabled" : "disabled"); if (!ga->autoengine) { wlogprint("Resetting GPU engine clock to startup settings\n"); set_defaultengine(gpu); } - } else if (!strncasecmp(&input, "t", 1)) { + } else if (INPUTEQ(t)) { val = curses_int("Enter target temperature for this GPU in C (0-200)"); if (val < 0 || val > 200) wlogprint("Invalid temperature"); else ga->targettemp = val; - } else if (!strncasecmp(&input, "o", 1)) { + } else if (INPUTEQ(o)) { wlogprint("Enter overheat temperature for this GPU in C (%d+)", ga->targettemp); val = curses_int(""); if (val <= ga->targettemp || val > 200) wlogprint("Invalid temperature"); else ga->overtemp = val; - } else if (!strncasecmp(&input, "c", 1)) { + } else if (INPUTEQ(c)) { wlogprint("Enter cutoff temperature for this GPU in C (%d+)", ga->overtemp); val = curses_int(""); if (val <= ga->overtemp || val > 200) @@ -1265,70 +1265,70 @@ updated: wlogprint("Or press any other key to continue\n"); input = getch(); - if (!strncasecmp(&input, "a", 1)) { + if (INPUTEQ(a)) { change_autosettings(gpu); - } else if (!strncasecmp(&input, "e", 1)) { + } else if (INPUTEQ(e)) { get_enginerange(gpu, &imin, &imax); wlogprint("Enter GPU engine clock speed (%d - %d Mhz)", imin, imax); val = curses_int(""); if (val < imin || val > imax) { wlogprint("Value is outside safe range, are you sure?\n"); input = getch(); - if (strncasecmp(&input, "y", 1)) + if (INPUTNEQ(y)) return; } if (!set_engineclock(gpu, val)) wlogprint("Driver reports success but check values below\n"); else wlogprint("Failed to modify engine clock speed\n"); - } else if (!strncasecmp(&input, "f", 1)) { + } else if (INPUTEQ(f)) { get_fanrange(gpu, &imin, &imax); wlogprint("Enter fan percentage (%d - %d %)", imin, imax); val = curses_int(""); if (val < imin || val > imax) { wlogprint("Value is outside safe range, are you sure?\n"); input = getch(); - if (strncasecmp(&input, "y", 1)) + if (INPUTNEQ(y)) return; } if (!set_fanspeed(gpu, val)) wlogprint("Driver reports success but check values below\n"); else wlogprint("Failed to modify fan speed\n"); - } else if (!strncasecmp(&input, "m", 1)) { + } else if (INPUTEQ(m)) { get_memoryrange(gpu, &imin, &imax); wlogprint("Enter GPU memory clock speed (%d - %d Mhz)", imin, imax); val = curses_int(""); if (val < imin || val > imax) { wlogprint("Value is outside safe range, are you sure?\n"); input = getch(); - if (strncasecmp(&input, "y", 1)) + if (INPUTNEQ(y)) return; } if (!set_memoryclock(gpu, val)) wlogprint("Driver reports success but check values below\n"); else wlogprint("Failed to modify memory clock speed\n"); - } else if (!strncasecmp(&input, "v", 1)) { + } else if (INPUTEQ(v)) { get_vddcrange(gpu, &fmin, &fmax); wlogprint("Enter GPU voltage (%.3f - %.3f V)", fmin, fmax); fval = curses_float(""); if (fval < fmin || fval > fmax) { wlogprint("Value is outside safe range, are you sure?\n"); input = getch(); - if (strncasecmp(&input, "y", 1)) + if (INPUTNEQ(y)) return; } if (!set_vddc(gpu, fval)) wlogprint("Driver reports success but check values below\n"); else wlogprint("Failed to modify voltage\n"); - } else if (!strncasecmp(&input, "p", 1)) { + } else if (INPUTEQ(p)) { val = curses_int("Enter powertune value (-20 - 20)"); if (val < -20 || val > 20) { wlogprint("Value is outside safe range, are you sure?\n"); input = getch(); - if (strncasecmp(&input, "y", 1)) + if (INPUTNEQ(y)) return; } if (!set_powertune(gpu, val)) diff --git a/cgminer.c b/cgminer.c index 60eb842f..21d90d1d 100644 --- a/cgminer.c +++ b/cgminer.c @@ -2814,10 +2814,10 @@ retry: wlogprint("Or press any other key to continue\n"); input = getch(); - if (!strncasecmp(&input, "a", 1)) { + if (INPUTEQ(a)) { input_pool(true); goto updated; - } else if (!strncasecmp(&input, "r", 1)) { + } else if (INPUTEQ(r)) { if (total_pools <= 1) { wlogprint("Cannot remove last pool"); goto retry; @@ -2837,7 +2837,7 @@ retry: pool->enabled = POOL_DISABLED; remove_pool(pool); goto updated; - } else if (!strncasecmp(&input, "s", 1)) { + } else if (INPUTEQ(s)) { selected = curses_int("Select pool number"); if (selected < 0 || selected >= total_pools) { wlogprint("Invalid selection\n"); @@ -2847,7 +2847,7 @@ retry: pool->enabled = POOL_ENABLED; switch_pools(pool); goto updated; - } else if (!strncasecmp(&input, "d", 1)) { + } else if (INPUTEQ(d)) { if (active_pools() <= 1) { wlogprint("Cannot disable last pool"); goto retry; @@ -2862,7 +2862,7 @@ retry: if (pool == current_pool()) switch_pools(NULL); goto updated; - } else if (!strncasecmp(&input, "e", 1)) { + } else if (INPUTEQ(e)) { selected = curses_int("Select pool number"); if (selected < 0 || selected >= total_pools) { wlogprint("Invalid selection\n"); @@ -2873,7 +2873,7 @@ retry: if (pool->prio < current_pool()->prio) switch_pools(pool); goto updated; - } else if (!strncasecmp(&input, "c", 1)) { + } else if (INPUTEQ(c)) { for (i = 0; i <= TOP_STRATEGY; i++) wlogprint("%d: %s\n", i, strategies[i]); selected = curses_int("Select strategy number type"); @@ -2893,7 +2893,7 @@ retry: pool_strategy = selected; switch_pools(NULL); goto updated; - } else if (!strncasecmp(&input, "i", 1)) { + } else if (INPUTEQ(i)) { selected = curses_int("Select pool number"); if (selected < 0 || selected >= total_pools) { wlogprint("Invalid selection\n"); @@ -2928,17 +2928,17 @@ retry: opt_log_interval); wlogprint("Select an option or any other key to return\n"); input = getch(); - if (!strncasecmp(&input, "q", 1)) { + if (INPUTEQ(q)) { opt_quiet ^= true; wlogprint("Quiet mode %s\n", opt_quiet ? "enabled" : "disabled"); goto retry; - } else if (!strncasecmp(&input, "v", 1)) { + } else if (INPUTEQ(v)) { opt_log_output ^= true; if (opt_log_output) opt_quiet = false; wlogprint("Verbose mode %s\n", opt_log_output ? "enabled" : "disabled"); goto retry; - } else if (!strncasecmp(&input, "n", 1)) { + } else if (INPUTEQ(n)) { opt_log_output = false; opt_debug = false; opt_quiet = false; @@ -2946,27 +2946,27 @@ retry: want_per_device_stats = false; wlogprint("Output mode reset to normal\n"); goto retry; - } else if (!strncasecmp(&input, "d", 1)) { + } else if (INPUTEQ(d)) { opt_debug ^= true; opt_log_output = opt_debug; if (opt_debug) opt_quiet = false; wlogprint("Debug mode %s\n", opt_debug ? "enabled" : "disabled"); goto retry; - } else if (!strncasecmp(&input, "p", 1)) { + } else if (INPUTEQ(p)) { want_per_device_stats ^= true; opt_log_output = want_per_device_stats; wlogprint("Per-device stats %s\n", want_per_device_stats ? "enabled" : "disabled"); goto retry; - } else if (!strncasecmp(&input, "r", 1)) { + } else if (INPUTEQ(r)) { opt_protocol ^= true; if (opt_protocol) opt_quiet = false; wlogprint("RPC protocol debugging %s\n", opt_protocol ? "enabled" : "disabled"); goto retry; - } else if (!strncasecmp(&input, "c", 1)) + } else if (INPUTEQ(c)) clear_logwin(); - else if (!strncasecmp(&input, "l", 1)) { + else if (INPUTEQ(l)) { selected = curses_int("Interval in seconds"); if (selected < 0 || selected > 9999) { wlogprint("Invalid selection\n"); @@ -2975,7 +2975,7 @@ retry: opt_log_interval = selected; wlogprint("Log interval set to %d seconds\n", opt_log_interval); goto retry; - } else if (!strncasecmp(&input, "s", 1)) { + } else if (INPUTEQ(s)) { opt_realquiet = true; } else clear_logwin(); @@ -3001,7 +3001,7 @@ retry: wlogprint("Select an option or any other key to return\n"); input = getch(); - if (!strncasecmp(&input, "q", 1)) { + if (INPUTEQ(q)) { selected = curses_int("Extra work items to queue"); if (selected < 0 || selected > 9999) { wlogprint("Invalid selection\n"); @@ -3009,7 +3009,7 @@ retry: } opt_queue = selected; goto retry; - } else if (!strncasecmp(&input, "s", 1)) { + } else if (INPUTEQ(s)) { selected = curses_int("Set scantime in seconds"); if (selected < 0 || selected > 9999) { wlogprint("Invalid selection\n"); @@ -3017,7 +3017,7 @@ retry: } opt_scantime = selected; goto retry; - } else if (!strncasecmp(&input, "e", 1)) { + } else if (INPUTEQ(e)) { selected = curses_int("Set expiry time in seconds"); if (selected < 0 || selected > 9999) { wlogprint("Invalid selection\n"); @@ -3025,7 +3025,7 @@ retry: } opt_expiry = selected; goto retry; - } else if (!strncasecmp(&input, "r", 1)) { + } else if (INPUTEQ(r)) { selected = curses_int("Retries before failing (-1 infinite)"); if (selected < -1 || selected > 9999) { wlogprint("Invalid selection\n"); @@ -3033,7 +3033,7 @@ retry: } opt_retries = selected; goto retry; - } else if (!strncasecmp(&input, "p", 1)) { + } else if (INPUTEQ(p)) { selected = curses_int("Seconds to pause before network retries"); if (selected < 1 || selected > 9999) { wlogprint("Invalid selection\n"); @@ -3041,7 +3041,7 @@ retry: } opt_fail_pause = selected; goto retry; - } else if (!strncasecmp(&input, "w", 1)) { + } else if (INPUTEQ(w)) { FILE *fcfg; char *str, filename[PATH_MAX], prompt[PATH_MAX + 50]; @@ -3067,7 +3067,7 @@ retry: if (!stat(filename, &statbuf)) { wlogprint("File exists, overwrite?\n"); input = getch(); - if (strncasecmp(&input, "y", 1)) + if (INPUTNEQ(y)) goto retry; } } @@ -3080,10 +3080,10 @@ retry: fclose(fcfg); goto retry; - } else if (!strncasecmp(&input, "c", 1)) { + } else if (INPUTEQ(c)) { wlogprint("Are you sure?\n"); input = getch(); - if (!strncasecmp(&input, "y", 1)) + if (INPUTEQ(y)) app_restart(); else clear_logwin(); @@ -3105,16 +3105,16 @@ static void *input_thread(void __maybe_unused *userdata) char input; input = getch(); - if (!strncasecmp(&input, "q", 1)) { + if (INPUTEQ(q)) { kill_work(); return NULL; - } else if (!strncasecmp(&input, "d", 1)) + } else if (INPUTEQ(d)) display_options(); - else if (!strncasecmp(&input, "p", 1)) + else if (INPUTEQ(p)) display_pools(); - else if (!strncasecmp(&input, "s", 1)) + else if (INPUTEQ(s)) set_options(); - else if (have_opencl && !strncasecmp(&input, "g", 1)) + else if (have_opencl && INPUTEQ(g)) manage_gpu(); if (opt_realquiet) { disable_curses(); diff --git a/driver-opencl.c b/driver-opencl.c index dd156871..71462f6c 100644 --- a/driver-opencl.c +++ b/driver-opencl.c @@ -663,7 +663,7 @@ retry: selected = 0; else selected = -1; - if (!strncasecmp(&input, "e", 1)) { + if (INPUTEQ(e)) { struct cgpu_info *cgpu; if (selected) @@ -693,7 +693,7 @@ retry: tq_push(thr->q, &ping); } goto retry; - } if (!strncasecmp(&input, "d", 1)) { + } if (INPUTEQ(d)) { if (selected) selected = curses_int("Select GPU to disable"); if (selected < 0 || selected >= nDevs) { @@ -706,7 +706,7 @@ retry: } gpus[selected].deven = DEV_DISABLED; goto retry; - } else if (!strncasecmp(&input, "i", 1)) { + } else if (INPUTEQ(i)) { int intensity; char *intvar; @@ -739,7 +739,7 @@ retry: wlogprint("Intensity on gpu %d set to %d\n", selected, intensity); pause_dynamic_threads(selected); goto retry; - } else if (!strncasecmp(&input, "r", 1)) { + } else if (INPUTEQ(r)) { if (selected) selected = curses_int("Select GPU to attempt to restart"); if (selected < 0 || selected >= nDevs) { @@ -749,7 +749,7 @@ retry: wlogprint("Attempting to restart threads of GPU %d\n", selected); reinit_device(&gpus[selected]); goto retry; - } else if (adl_active && (!strncasecmp(&input, "c", 1))) { + } else if (adl_active && (INPUTEQ(c))) { if (selected) selected = curses_int("Select GPU to change settings on"); if (selected < 0 || selected >= nDevs) { diff --git a/miner.h b/miner.h index a965ecc9..ec8f9a9b 100644 --- a/miner.h +++ b/miner.h @@ -130,6 +130,9 @@ void *alloca (size_t); #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) #endif +#define INPUTEQ(X) (!strncasecmp(&input, ("X"), 1)) +#define INPUTNEQ(X) (strncasecmp(&input, ("X"), 1)) + enum alive { LIFE_WELL, LIFE_SICK,