diff --git a/src/bin/clock/main.c b/src/bin/clock/main.c index 1542003..d55ca99 100644 --- a/src/bin/clock/main.c +++ b/src/bin/clock/main.c @@ -56,9 +56,7 @@ }; int main(int argc,char **argv) { - char time[10]; int sysTime = 0x0; - int offset = 0x0; int i = 0x0; int year = 0x0; @@ -68,77 +66,40 @@ int min = 0x0; int sec = 0x0; - if (argv[1] != 0x0) { - offset = atoi(argv[1]); + sysTime = gettime(); + + year = (sysTime/YEAR) + 1970; + sysTime -= (YEAR * (year-1970)); + sysTime -= DAY*(((year-1970)+1)/4); + for (i = 11;i >= 0;i--) { + if ((sysTime - monthSecs[i]) > 0) { + month = i; + break; + } } - while (1) { - - while (sysTime == gettime()) - sched_yield(); - - year = (sysTime/YEAR) + 1970; - sysTime -= (YEAR * (year-1970)); - sysTime -= DAY*(((year-1970)+1)/4); - for (i = 11;i >= 0;i--) { - if ((sysTime - monthSecs[i]) > 0) { - month = i; - break; - } - } - sysTime -= monthSecs[i]; - if (((month > 1) && (((year-1970)+2)%4)) == 0x0) { - sysTime += DAY; - } + sysTime -= monthSecs[i]; + if (((month > 1) && (((year-1970)+2)%4)) == 0x0) { + sysTime += DAY; + } - day = (sysTime/DAY); - sysTime -= (day*DAY); - hour = (sysTime/HOUR); - sysTime -= (hour*HOUR); - min = (sysTime/MINUTE); - sysTime -= (min*MINUTE); - sec = sysTime; + day = (sysTime/DAY); + sysTime -= (day*DAY); + hour = (sysTime/HOUR); + sysTime -= (hour*HOUR); + min = (sysTime/MINUTE); + sysTime -= (min*MINUTE); + sec = sysTime; - sprintf(time,"[%02d/%02d/%i, %02d:%02d.%02d]",month,day,year,hour,min,sec); - //print2(time,offset,0xFA); - printf(time); - break; - sysTime = gettime(); - } + printf("[%02d/%02d/%i, %02d:%02d.%02d]\n",month,day,year,hour,min,sec); return(0); } -void print2(char *string,int cv_pos,int printColor) -{ - char *scrnBuf = (char *)0xB8000; - int i = 0; - - while ('\0' != string[i]) { - switch (string[i]) { - case '\t': - cv_pos += 3; - break; - case '\b': - if (cv_pos != 0) { - cv_pos -= 2; - scrnBuf[((cv_pos + 1) << 1)] = ' '; - } /* if */ - break; - case '\n': - cv_pos = cv_pos - (cv_pos % 80) + 79; - break; - default: - scrnBuf[(cv_pos << 1)] = string[i]; - scrnBuf[(cv_pos << 1) | 0x1] = (printColor & 0xFF); - break; - } /* switch */ - - cv_pos++; - i++; - } - } - /*** $Log$ + Revision 1.3 2004/05/21 15:45:36 reddawg + Fixed our clock to print the time instead of forcing it into the video buffer + END ***/ + diff --git a/src/bin/login/main.c b/src/bin/login/main.c index 1724219..7754bb5 100644 --- a/src/bin/login/main.c +++ b/src/bin/login/main.c @@ -50,7 +50,7 @@ else if(ch == 0) count--; else string[count] = ch; if (ch != 8) printf("*"); - count ++; + count++; } string[count] = '\0'; return(string); @@ -65,7 +65,7 @@ struct passwd *data = 0x0; if ((getuid() != 0) && (getgid() != 0)) { printf("This Application Must Be Run As Root.\n"); - exit(1); + exit(-1); } data = (struct passwd *)malloc(4096); if (!(fd = fopen("userdb@sys","r"))) { @@ -120,6 +120,6 @@ } printf("Login Incorrect!\n"); goto login; - exit(1); + return(0x0); } diff --git a/src/bin/shell/exec.c b/src/bin/shell/exec.c index 8877b66..1a34679 100644 --- a/src/bin/shell/exec.c +++ b/src/bin/shell/exec.c @@ -34,7 +34,7 @@ if (!cPid) { exec(data->argv[0],data->argc,data->argv); printf("%s: Command Not Found.\n",data->argv[0]); - exit(1); + exit(-1); } else { if (data->bg == 0x0) { diff --git a/src/bin/shell/input.c b/src/bin/shell/input.c index da3815e..e4220eb 100644 --- a/src/bin/shell/input.c +++ b/src/bin/shell/input.c @@ -34,9 +34,12 @@ while (data[0] == ' ') { data++; } + + if (*data == '\0') return; + buffer->args = (struct argsStruct *)malloc(sizeof(struct argsStruct)); - //printf("args: [0x%X]\n",buffer->args); tmpArgs = buffer->args; + while(data != 0x0) { arg = strtok(data," "); data = strtok(NULL,"\n"); @@ -53,8 +56,8 @@ tmpArgs = tmpArgs->next; } } + buffer->argv = (char **)malloc(4*buffer->argc); - //printf("argv: [0x%X]\n",buffer->argv); tmpArgs = buffer->args; for (i=0;iargc;i++) { buffer->argv[i] = tmpArgs->arg; diff --git a/src/bin/shell/main.c b/src/bin/shell/main.c index 99d2bad..76fa278 100644 --- a/src/bin/shell/main.c +++ b/src/bin/shell/main.c @@ -37,9 +37,9 @@ char *buffer = (char *)malloc(512); inputBuffer *inBuf = (inputBuffer *)malloc(sizeof(inputBuffer)); - machine = (char *)malloc(8); + machine = (char *)malloc(32); cwd = (char *)malloc(1024); - cwc = (char *)malloc(3); + cwc = (char *)malloc(32); sprintf(machine,"uBixCube"); getcwd(cwd,1024); @@ -58,5 +58,5 @@ inBuf->args = 0x0; inBuf->bg = 0x0; } - exit(0); + return(0x0); }