diff options
| author | Michal Idziorek <m.i@gmx.at> | 2015-05-24 03:32:14 +0200 |
|---|---|---|
| committer | Michal Idziorek <m.i@gmx.at> | 2015-05-24 03:32:14 +0200 |
| commit | fbbbc75200008e2b603e5b7df8cd2e1a5d17483b (patch) | |
| tree | eb78fa27e182fd840b02f603cef3a1df97a53249 /userspace | |
| parent | f5d8d7bee20742a7a101665ebca630ff8e05d77b (diff) | |
syscalls and terminal functionality for GAMING mode
Diffstat (limited to 'userspace')
| -rw-r--r-- | userspace/snake.c | 16 | ||||
| -rw-r--r-- | userspace/sys/libfool.a | bin | 35776 -> 37292 bytes | |||
| -rw-r--r-- | userspace/sys/syscalls.c | 12 | ||||
| -rw-r--r-- | userspace/sys/syscalls.o | bin | 17092 -> 18572 bytes |
4 files changed, 26 insertions, 2 deletions
diff --git a/userspace/snake.c b/userspace/snake.c index aedf191..8352d1b 100644 --- a/userspace/snake.c +++ b/userspace/snake.c @@ -3,11 +3,23 @@ int main() { printf("Hello I am FoolSnake 0.1\n"); - printf("setvbuf returned %i",setvbuf(stdin,NULL,_IONBF,0)); + printf("setvbuf returned %i\n",setvbuf(stdin,NULL,_IONBF,0)); + + fool_tune(1,0,0); // activate gaming mode while(1) { - printf("%c",fgetc(stdin)); + while(!has_data_waiting()) + { + + } + + char c=fgetc(stdin); + printf("[%c]\n",c); + if(c=='q')break; + } + + fool_tune(0,0,0); // de-activate gaming mode } diff --git a/userspace/sys/libfool.a b/userspace/sys/libfool.a Binary files differindex 7c47ee4..81a4f16 100644 --- a/userspace/sys/libfool.a +++ b/userspace/sys/libfool.a diff --git a/userspace/sys/syscalls.c b/userspace/sys/syscalls.c index 9dfd313..4b29451 100644 --- a/userspace/sys/syscalls.c +++ b/userspace/sys/syscalls.c @@ -35,6 +35,18 @@ int readdir(const char *name,fs_dirent *dirs,int max) return syscall(SYSCALL_READDIR,name,dirs,max); } +int has_data_waiting() +{ + + return syscall(SYSCALL_HAS_DATA,0,0,0); +} + +int fool_tune(int v1, int v2, int v3) +{ + + return syscall(SYSCALL_TUNE,v1,v2,v3); +} + void _exit(int ret) { _exit2(ret,environ); diff --git a/userspace/sys/syscalls.o b/userspace/sys/syscalls.o Binary files differindex 2176036..f8fd94b 100644 --- a/userspace/sys/syscalls.o +++ b/userspace/sys/syscalls.o |
