+#include <stdio.h>
#include <string.h>
#include <stdint.h>
+#include "con.h"
+#include "vga.h"
+#include "mem.h"
+#include "intr.h"
-void clearscr(void)
+void kmain(void)
{
- memset((void*)0xb8000, 0, 80 * 25 * 2);
-}
+ int i, line;
-void drawtext(int x, int y, const char *s)
-{
- uint16_t *vptr = (uint16_t*)0xb8000 + y * 80 + x;
+ con_init();
- while(*s) {
- *vptr++ = 0x0c00 | *s++;
- }
-}
+ mem_init();
+ intr_init();
-void kmain(void)
-{
- clearscr();
- drawtext(10, 5, "3sys kernel 1");
+ line = 0;
+ for(;;) {
+ printf("line %d", line++);
+
+ con_pushcur();
+ con_setcur(30, 0);
+ for(i=0; i<65536 * 300; i++) {
+ if((i & 0xfffff) == 0) {
+ con_setcolor(VGA_BRIGHT | (line & 7), VGA_BLACK);
+ con_putchar('>');
+ }
+ }
+ con_setcolor(VGA_WHITE, VGA_BLACK);
+ con_popcur();
+ con_putchar('\n');
+ }
}