From a99ca43066ba246475809a0e805bf52e8195debd Mon Sep 17 00:00:00 2001 From: Michal Idziorek Date: Tue, 24 Jun 2014 13:53:31 +0200 Subject: Initial commit of FoolOS FoolOS - the most useless OS in history. --- kernel/kernel.c | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 kernel/kernel.c (limited to 'kernel/kernel.c') diff --git a/kernel/kernel.c b/kernel/kernel.c new file mode 100644 index 0000000..665455d --- /dev/null +++ b/kernel/kernel.c @@ -0,0 +1,99 @@ +#define SCR_WIDTH 80 +#define SCR_HEIGHT 23 + +#define SCR_CTRL 0x3D4 +#define SCR_DATA 0x3D5 + +#define SCR_BLACK 0x0 +#define SCR_BLUE 0x1 +#define SCR_GREEN 0x2 +#define SCR_CYAN 0x3 +#define SCR_RED 0x4 +// todo... +# define SCR_WHITE 0xf + + + +void print_char(int x, int y, char c, char col) +{ + char* video_mem=(char *)0xb8000+(x+y*SCR_WIDTH)*2; + video_mem[0]=c; + video_mem[1]=col; +} + +float func(float x,float y) +{ + return x*x*y; +} + +void clear_screen() +{ + int x=0; + int y=0; + + for(x=0;x300)time=0; + + } + +} + +int cursor=0; +void int0() +{ + int i=0; + char codes[]={ 0x1e,0x30,0x2e,0x23,0x24,0x2b,0x34,0x33,0x43,0x3b,0x42,0x4b,0x3a,0x31,0x44,0x43,0x15,0x2d,0x1b,0x2c,0x3c,0x2a,0x1d,0x22,0x35,0x1a}; + + char* int_count=(char *)0x7c00+3; + + for(i=0;i<24;i++){ + if(codes[i]==*int_count) + print_char(10,10,'A'+i,0xf); + } + +} -- cgit v1.2.3