8 今天的成果(harib01h)

我们已经努力到现在了,再加最后一把劲儿。这次我们只修改HariMain程序。让我们看看执行结果会是什么样呢?

本次的HariMain

  1. void HariMain(void)
  2. {
  3. char *vram;
  4. int xsize, ysize;
  5. init_palette();
  6. vram = (char *) 0xa0000;
  7. xsize = 320;
  8. ysize = 200;
  9. boxfill8(vram, xsize, COL8_008484, 0, 0, xsize - 1, ysize - 29);
  10. boxfill8(vram, xsize, COL8_C6C6C6, 0, ysize - 28, xsize - 1, ysize - 28);
  11. boxfill8(vram, xsize, COL8_FFFFFF, 0, ysize - 27, xsize - 1, ysize - 27);
  12. boxfill8(vram, xsize, COL8_C6C6C6, 0, ysize - 26, xsize - 1, ysize - 1);
  13. boxfill8(vram, xsize, COL8_FFFFFF, 3, ysize - 24, 59, ysize - 24);
  14. boxfill8(vram, xsize, COL8_FFFFFF, 2, ysize - 24, 2, ysize - 4);
  15. boxfill8(vram, xsize, COL8_848484, 3, ysize - 4, 59, ysize - 4);
  16. boxfill8(vram, xsize, COL8_848484, 59, ysize - 23, 59, ysize - 5);
  17. boxfill8(vram, xsize, COL8_000000, 2, ysize - 3, 59, ysize - 3);
  18. boxfill8(vram, xsize, COL8_000000, 60, ysize - 24, 60, ysize - 3);
  19. boxfill8(vram, xsize, COL8_848484, xsize - 47, ysize - 24, xsize - 4, ysize - 24);
  20. boxfill8(vram, xsize, COL8_848484, xsize - 47, ysize - 23, xsize - 47, ysize - 4);
  21. boxfill8(vram, xsize, COL8_FFFFFF, xsize - 47, ysize - 3, xsize - 4, ysize - 3);
  22. boxfill8(vram, xsize, COL8_FFFFFF, xsize - 3, ysize - 24, xsize - 3, ysize - 3);
  23. for (;;) {
  24. io_hlt();
  25. }
  26. }

8 今天的成果(harib01h) - 图1

怎么样?(笑)

任务条(task bar)有点大了,这是因为像素数太少的缘故吧。但很有进步,已经有点操作系统的样子了。总算到了这一步。从什么都不会开始,到现在只用了四天。嗯,干得不错嘛。现在的haribote.sys是1216字节,大概是1.2KB吧。虽然这个操作系统很小,但已经有这么多功能了。好,今天先到此为止,明天再见啦。