int main(void) { struct usb_dev_handle *myhandle; myhandle = find_rl78(); if (myhandle != NULL) { fd_set s_rd; struct timeval delay; char ch, ch2; configure_rl78(myhandle); configure_screen(); while (ch != EOF && ch != CONTROL('d')) { delay.tv_sec = 0; delay.tv_usec = 0; FD_ZERO(&s_rd); FD_SET(fileno(stdin), &s_rd); select(fileno(stdin)+1, &s_rd, NULL, NULL, &delay); if (FD_ISSET (fileno(stdin), &s_rd)) { ch=getch(); if (ch != EOF && ch != CONTROL('d')) rl78_write(myhandle, &ch, 1, 100); } int ret = rl78_read(myhandle, &ch2, 1, 50); if (ret >= 0) { putchar (ch2); } } usb_close(myhandle); endwin(); } return 0; }
static void crtc6845_state_save_postload(void *param) { crtc6845_state *chip = (crtc6845_state *)param; configure_screen(chip, TRUE); }