diff --git a/c/src/p2fa.c b/c/src/p2fa.c index 58f519e..cc79c01 100644 --- a/c/src/p2fa.c +++ b/c/src/p2fa.c @@ -41,10 +41,10 @@ void code(UWORD *blackImage) { int ch; while(1) { ch = getch(); - if (ch == 'q') { - break; - } + if (ch != ERR) { + if (ch == 'q') break; DebugLine(2, 0, "Key Pressed: %c\n", ch); + } Paint_NewImage(blackImage, EPD_2in13_V4_WIDTH, EPD_2in13_V4_HEIGHT, 90, WHITE); EPD_2in13_V4_Init(); @@ -71,7 +71,10 @@ void code(UWORD *blackImage) { int lastI = 30 * 1000; for (int i = getTimeRemainingMS(30);; i = getTimeRemainingMS(30)) { ch = getch(); - if (i > lastI || ch == 'q') break; + if (ch != ERR) { + if (ch == 'q') break; + } + if (i > lastI) break; startTime = clock(); DebugLine(4, 0, "Time Left: %d\n", i); @@ -125,6 +128,8 @@ int main() { initscr(); cbreak(); noecho(); + nodelay(stdscr, TRUE); + keypad(stdscr, TRUE); loadConfigs();