mirror of
https://github.com/ringtailsoftware/uvm32.git
synced 2026-06-06 06:53:39 +00:00
Flush output regularly, don't wait for keyboard.
This commit is contained in:
parent
9e6f6c5a67
commit
cd95e63af5
1 changed files with 5 additions and 1 deletions
|
|
@ -36,6 +36,7 @@ const uvm32_mapping_t env[] = {
|
||||||
void disableRawMode(void) {
|
void disableRawMode(void) {
|
||||||
tcsetattr(STDIN_FILENO, TCSAFLUSH, &orig_termios);
|
tcsetattr(STDIN_FILENO, TCSAFLUSH, &orig_termios);
|
||||||
}
|
}
|
||||||
|
|
||||||
void enableRawMode(void) {
|
void enableRawMode(void) {
|
||||||
tcgetattr(STDIN_FILENO, &orig_termios);
|
tcgetattr(STDIN_FILENO, &orig_termios);
|
||||||
atexit(disableRawMode);
|
atexit(disableRawMode);
|
||||||
|
|
@ -89,7 +90,7 @@ bool poll_getch(uint8_t* c) {
|
||||||
FD_SET(STDIN_FILENO, &readfds);
|
FD_SET(STDIN_FILENO, &readfds);
|
||||||
|
|
||||||
tv.tv_sec = 0;
|
tv.tv_sec = 0;
|
||||||
tv.tv_usec = 200;
|
tv.tv_usec = 0;
|
||||||
|
|
||||||
ret = select(STDIN_FILENO + 1, &readfds, NULL, NULL, &tv);
|
ret = select(STDIN_FILENO + 1, &readfds, NULL, NULL, &tv);
|
||||||
|
|
||||||
|
|
@ -159,6 +160,7 @@ int main(int argc, char *argv[]) {
|
||||||
uint32_t total_instrs = 0;
|
uint32_t total_instrs = 0;
|
||||||
uint32_t num_ioreqs = 0;
|
uint32_t num_ioreqs = 0;
|
||||||
|
|
||||||
|
// setup terminal for getch()
|
||||||
enableRawMode();
|
enableRawMode();
|
||||||
|
|
||||||
while(isrunning) {
|
while(isrunning) {
|
||||||
|
|
@ -233,12 +235,14 @@ int main(int argc, char *argv[]) {
|
||||||
return 1;
|
return 1;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
fflush(stdout);
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("Executed total of %d instructions and %d ioreqs\n", (int)total_instrs, (int)num_ioreqs);
|
printf("Executed total of %d instructions and %d ioreqs\n", (int)total_instrs, (int)num_ioreqs);
|
||||||
|
|
||||||
free(rom);
|
free(rom);
|
||||||
|
|
||||||
|
// put terminal back to how it was
|
||||||
disableRawMode();
|
disableRawMode();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue