summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorMichal Idziorek <m.i@gmx.at>2014-10-20 20:51:01 +0200
committerMichal Idziorek <m.i@gmx.at>2014-10-20 20:51:01 +0200
commit37ceff93572bba6defd916884999c496108220ee (patch)
tree1b40ae0f5e3c2c3cf1bb60c3f1d9f7ae5dd53c1b /kernel
parent813272cd88cc6c0a1dfbb121d2130fc849042c8a (diff)
started porting simple brainfuck interpreter
Diffstat (limited to 'kernel')
-rw-r--r--kernel/kernel.c4
-rw-r--r--kernel/vesa.c6
2 files changed, 10 insertions, 0 deletions
diff --git a/kernel/kernel.c b/kernel/kernel.c
index 3372b75..34f3d69 100644
--- a/kernel/kernel.c
+++ b/kernel/kernel.c
@@ -202,6 +202,10 @@ void kernel_main(uint32_t initial_stack, int mp)
//
//
//vesa_init_doublebuff();
+
+ // autorun "user-space" prog
+ asm("push $0x80800");
+ asm("ret");
while(1)
{
}
diff --git a/kernel/vesa.c b/kernel/vesa.c
index 7001e02..b0e9885 100644
--- a/kernel/vesa.c
+++ b/kernel/vesa.c
@@ -172,9 +172,15 @@ void PutString(char *str, int x,int y, int color, va_list va)
void PutConsoleChar(char c, int color)
{
+ if(c=='\n')
+ {
+ PutConsoleNL();
+ return;
+ }
PutFont(c, console_x*10,console_y*12, color);
console_x++;
+
#ifdef FOOLOS_CONSOLE_AUTOBREAK
if(console_x>console_cols)PutConsoleNL();
#endif