jankos/shell.c

38 lines
724 B
C

#include "shell.h"
#include "stlio.h"
#include "mem.h"
#include "pit.h"
char line[LINE_LENGTH];
void jmain(void) {
memset((u8*)line, 0x00, LINE_LENGTH);
while(1) {
printf("jos % ");
read(line, LINE_LENGTH);
printf("\n");
//asm("xchg bx, bx");
if(!strcmp("break", line)) {
printf("breaking out");
memset((u8*)line, 0x00, LINE_LENGTH);
}
else if(!strcmp("timer", line)) {
printf("Time tick: ");
printhex(pit_timer_ticks);
memset((u8*)line, 0x00, LINE_LENGTH);
}
else {
printf("Attempting a second read: ");
read(line, LINE_LENGTH);
printf(line);
}
}
}
void strip_newline(char* line) {
for(u32 i = 0;i <strlen(line); i++) {
if(line[i] == '\n') {
line[i] = '\0';
}
}
}