X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=bootcensus;a=blobdiff_plain;f=src%2Flibc%2Funistd.c;fp=src%2Flibc%2Funistd.c;h=7da132f2c741758900004bc2b837b0101bc48c73;hp=1fc05425ca354ac8ec9bd549ddc36d74ff804bb0;hb=a2f065772bcb7766859033d140980720ef824546;hpb=19e033a35e0f312848fdcf81d9b4f07cc156f2e6 diff --git a/src/libc/unistd.c b/src/libc/unistd.c index 1fc0542..7da132f 100644 --- a/src/libc/unistd.c +++ b/src/libc/unistd.c @@ -19,6 +19,8 @@ along with this program. If not, see . #include #include "unistd.h" #include "fs.h" +#include "timer.h" +#include "asmops.h" int chdir(const char *path) { @@ -59,3 +61,13 @@ int rmdir(const char *path) fs_close(fsn); return 0; } + +int usleep(unsigned long usec) +{ + unsigned long wait_ticks = MSEC_TO_TICKS(usec / 1000ul); + unsigned long start_ticks = nticks; + while(nticks - start_ticks < wait_ticks) { + halt_cpu(); + } + return 0; +}