#include "uart.h" #include "task.h" #include "shell.h" #include void shell_run() { char input[64]; int pos = 0; uart_write("MiniOS Shell> "); while (1) { char c = uart_getchar(); uart_putchar(c); // Echo if (c == '\r' || c == '\n') { input[pos] = '\0'; uart_write("\n"); if (strcmp(input, "echo") == 0) { uart_write("Echo test\n"); } else if (strcmp(input, "ps") == 0) { uart_write("Task list: [0] task1, [1] task2\n"); } else if (strcmp(input, "halt") == 0) { uart_write("System halted.\n"); while (1); } else { uart_write("Unknown command\n"); } pos = 0; uart_write("MiniOS Shell> "); } else { input[pos++] = c; } } }