diff options
| -rw-r--r-- | asm/int_irq.asm | 1 | ||||
| -rw-r--r-- | fs/ext2.c | 4 | ||||
| -rw-r--r-- | kernel/config.h | 2 | ||||
| -rw-r--r-- | kernel/interrupts.c | 5 | ||||
| -rw-r--r-- | kernel/task.c | 1 | ||||
| -rw-r--r-- | userspace/init.c | 4 |
6 files changed, 11 insertions, 6 deletions
diff --git a/asm/int_irq.asm b/asm/int_irq.asm index 8567aa3..fd57a50 100644 --- a/asm/int_irq.asm +++ b/asm/int_irq.asm @@ -128,7 +128,6 @@ int_irq14: cli pop eax - pop eax call exception_handle_14 ;this will never return due to panic! jmp $ @@ -232,7 +232,7 @@ int ext2_inode_content(char *ram,int inode_nr,uint8_t *ramdest,int max) } else { - panic(FOOLOS_MODULE_NAME,"Triplu Indirect Block Pointers not supported yet, file is too big to load, sorry!"); + panic(FOOLOS_MODULE_NAME,"Triple Indirect Block Pointers not supported yet, file is too big to load, sorry!"); } @@ -242,7 +242,7 @@ int ext2_inode_content(char *ram,int inode_nr,uint8_t *ramdest,int max) } - log(FOOLOS_MODULE_NAME,FOOLOS_LOG_DEBUG,"Fool Check Sum: 0x%08X for %d bytes",sum,count); + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"Fool Check Sum: 0x%08X for %d bytes",sum,count); } diff --git a/kernel/config.h b/kernel/config.h index 60c650a..a741c4a 100644 --- a/kernel/config.h +++ b/kernel/config.h @@ -8,7 +8,7 @@ #define FOOLOS_CONFIG_H #define FOOLOS_CONSOLE_AUTOBREAK // add newline automatically at end of line -//#define FOOLOS_LOG_OFF // do not log anything +#define FOOLOS_LOG_OFF // do not log anything #define FOOLOS_CONSOLE // otherwise VESA will be used! #define MEM_PRINT_MEMORYMAP #define LOG_BUF_SIZE 4069 diff --git a/kernel/interrupts.c b/kernel/interrupts.c index 2fa6310..fed2b28 100644 --- a/kernel/interrupts.c +++ b/kernel/interrupts.c @@ -39,6 +39,11 @@ void exception_handle() void exception_handle_14(uint32_t error_code) { log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"error_code: 0x%08X",error_code); + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"error_code_P: %d",error_code&1); + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"error_code_W/R: %d",error_code&2); + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"error_code_U/S: %d",error_code&4); + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"error_code_RSVD: %d",error_code&8); + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"error_code_I/D: %d",error_code&16); log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"at addr: 0x%08X",x86_get_cr2()); panic(FOOLOS_MODULE_NAME,"page fault !"); } diff --git a/kernel/task.c b/kernel/task.c index 1bfc1b2..c5b5bc5 100644 --- a/kernel/task.c +++ b/kernel/task.c @@ -158,6 +158,7 @@ volatile void task_init(pdirectory *dir) char *argv[]={"/bin/init",NULL}; char *env[]={NULL}; syscall_execve("/bin/init",argv,env); +// syscall_execve("/bin/tput",argv,env); } diff --git a/userspace/init.c b/userspace/init.c index d152581..f588875 100644 --- a/userspace/init.c +++ b/userspace/init.c @@ -1,7 +1,7 @@ int main(int argc, char **argv) { - printf("fool-init: spawning a Fool's Shell\n"); + //printf("fool-init: spawning a Fool's Shell\n"); // loop forever and spawn shells if the top-shell exits while(1) @@ -13,7 +13,7 @@ int main(int argc, char **argv) if(pid==0) { char *argv[]={"/bin/foolshell",0}; - char *env[]={"PS1=$","PWD=/home/miguel","PATH=/bin",0}; + char *env[]={"PS1=$","PWD=/home/miguel","PATH=/bin","TERM=xterm",0}; execve("/bin/foolshell",argv,env); // replace process with our foolshell :) puts("FATAL ERROR: Something terrible happened. Unable to Execute SHELL!"); while(1);// hang |
