diff options
| author | Michal Idziorek <m.i@gmx.at> | 2014-12-08 21:59:14 +0100 |
|---|---|---|
| committer | Michal Idziorek <m.i@gmx.at> | 2014-12-08 21:59:14 +0100 |
| commit | e285e7cab2fe62e91cb726c429f872b2475fdf0a (patch) | |
| tree | dfc0e78b81dc2ca9dd77641cca9be5527b2bc5de /kernel/console.c | |
| parent | ddba680892e4dc8973d6c1d59f92affb987ca13b (diff) | |
fixed vesa fb mode!
Diffstat (limited to 'kernel/console.c')
| -rw-r--r-- | kernel/console.c | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/kernel/console.c b/kernel/console.c index cdd2fc1..e0e70a3 100644 --- a/kernel/console.c +++ b/kernel/console.c @@ -4,12 +4,21 @@ #include "kernel/config.h" +#include "lib/logger/log.h" +#include "fs/ext2.h" + +#define FOOLOS_MODULE_NAME "console" #ifdef FOOLOS_CONSOLE #include "video/console.h" -void console_init(){scr_clear();} +void console_init(){ + scr_clear(); + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"init console"); + int inode_nr=ext2_filename_to_inode(EXT2_RAM_ADDRESS,"/binfont.bin"); + if(inode_nr!=-1)ext2_inode_content(EXT2_RAM_ADDRESS,inode_nr,0x8000000,0xffff); // load font; +} void console_del_char(){scr_backspace();} void console_put_char_gray(char c){scr_put_char(c,SCR_GRAY2);} void console_put_char_white(char c){scr_put_char(c,SCR_WHITE);} @@ -24,8 +33,23 @@ void console_put_str_red(char *s){scr_put_string(s,SCR_RED);} #include "video/vesa.h" -void console_init(){uint32_t vesa_physbase=vesa_init(0x9300,0x9400,0x168000+512);} +void console_init(){ + + int inode_nr=ext2_filename_to_inode(EXT2_RAM_ADDRESS,"/binfont.bin"); + if(inode_nr!=-1)ext2_inode_content(EXT2_RAM_ADDRESS,inode_nr,0x1300000,0xffff); // load font; + uint32_t vesa_physbase=vesa_init(0xb000,0xc000,0x1300000); +} + +void console_del_char(char c){PutConsoleChar('*',0xffffff);} void console_put_char(char c){PutConsoleChar(c,0xffffff);} +void console_put_char_gray(char c){PutConsoleChar(c,0xffffff);} +void console_put_char_white(char c){PutConsoleChar(c,0xffffff);} +void console_put_char_green(char c){PutConsoleChar(c,0xffffff);} +void console_put_char_red(char c){PutConsoleChar(c,0xffffff);} void console_put_str(char *s){PutConsole(s,0xffffff);} +void console_put_str_gray(char *s){PutConsole(s,0xffffff);} +void console_put_str_white(char *s){PutConsole(s,0xffffff);} +void console_put_str_green(char *s){PutConsole(s,0xffffff);} +void console_put_str_red(char *s){PutConsole(s,0xffffff);} #endif |
