wrote a shell but have an error will debug tomorrow
This commit is contained in:
38
shell.c
38
shell.c
@@ -1,17 +1,29 @@
|
||||
#include "user.h"
|
||||
|
||||
void main(void) {
|
||||
// *((volatile int *) 0x80200000) = 0x1234;
|
||||
// printf(" ___ ___ ___ ___ ___ ___ ___ \\n");
|
||||
// printf(" /\\ \\ /\\__\\ /\\ \\ /\\ \\ /\\__\\ /\\ \\ /\\ \\ \\n");
|
||||
// printf(" /::\\ \\ /::| | /::\\ \\ /::\\ \\ /:/ / /::\\ \\ /::\\ \\ \\n");
|
||||
// printf(" /:/\\:\\ \\ /:|:| | /:/\\:\\ \\ /:/\\:\\ \\ /:/ / /:/\\:\\ \\ /:/\\ \\ \\ \\n");
|
||||
// printf(" /::\\~\\:\\ \\ /:/|:|__|__ /:/ \\:\\ \\ /::\\~\\:\\ \\ /:/ / /:/ \\:\\ \\ _\\:\\~\\ \\ \\ \\n");
|
||||
// printf(" /:/\\:\\ \\:\\__\\ /:/ |::::\\__\\ /:/__/ \\:\\__\\ /:/\\:\\ \\:\\__\\ /:/__/ /:/__/ \\:\\__\\ /\\ \\:\\ \\ \\__\\\\n");
|
||||
// printf(" \\/__\\:\\/:/ / \\/__/~~/:/ / \\:\\ \\ /:/ / \\:\\~\\:\\ \\/__/ \\:\\ \\ \\:\\ \\ /:/ / \\:\\ \\:\\ \\/__/\\n");
|
||||
// printf(" \\::/ / /:/ / \\:\\ /:/ / \\:\\ \\:\\__\\ \\:\\ \\ \\:\\ /:/ / \\:\\ \\:\\__\\ \\n");
|
||||
// printf(" /:/ / /:/ / \\:\\/:/ / \\:\\ \\/__/ \\:\\ \\ \\:\\/:/ / \\:\\/:/ / \\n");
|
||||
// printf(" /:/ / /:/ / \\::/ / \\:\\__\\ \\:\\__\\ \\::/ / \\::/ / \\n");
|
||||
// printf(" \\/__/ \\/__/ \\/__/ \\/__/ \\/__/ \\/__/ \\/__/ \\n");
|
||||
for (;;);
|
||||
while (1) {
|
||||
prompt:
|
||||
printf("# > ");
|
||||
char cmdline[128];
|
||||
for (int i = 0;; i++) {
|
||||
char ch = getchar();
|
||||
putchar(ch);
|
||||
if (i == sizeof(cmdline) - 1) {
|
||||
printf("too much yapping bro :(\n");
|
||||
goto prompt;
|
||||
} else if (ch == '\r') {
|
||||
printf("\n");
|
||||
cmdline[i] = '\0';
|
||||
break;
|
||||
} else {
|
||||
cmdline[i] = ch;
|
||||
}
|
||||
}
|
||||
|
||||
if (strcmp(cmdline, "hello") == 0) {
|
||||
printf("Hellow :3\n");
|
||||
} else {
|
||||
printf("I don't know what is %s yet :(", cmdline);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user