/* * Uses the ALT_DRIVER_READ() macro to call directly to driver if available. * Otherwise, uses newlib provided getchar() routine. */ int alt_getchar(void) { #ifdef ALT_USE_DIRECT_DRIVERS ALT_DRIVER_READ_EXTERNS(ALT_STDIN_DEV); char c; if (ALT_DRIVER_READ(ALT_STDIN_DEV, &c, 1, alt_fd_list[STDIN_FILENO].fd_flags) <= 0) { return -1; } return c; #else return getchar(); #endif }
/* * Uses the ALT_DRIVER_READ() macro to call directly to driver if available. * Otherwise, uses newlib provided getchar() routine. */ int alt_getchar(void) { #ifdef ALT_USE_DIRECT_DRIVERS ALT_DRIVER_READ_EXTERNS(ALT_STDIN_DEV); char c; if (ALT_DRIVER_READ(ALT_STDIN_DEV, &c, 1, 0) == -1) { return -1; } return c; #else return getchar(); #endif }