8 今天的成果(harib01h)
我們已經努力到現在了,再加最后一把勁兒。這次我們只修改HariMain程序。讓我們看看執行結果會是什么樣呢?
本次的HariMain
void HariMain(void) { char *vram; int xsize, ysize; init_palette(); vram = (char *) 0xa0000; xsize = 320; ysize = 200; boxfill8(vram, xsize, COL8_008484, 0, 0, xsize - 1, ysize -29); boxfill8(vram, xsize, COL8_C6C6C6, 0, ysize -28, xsize - 1, ysize -28); boxfill8(vram, xsize, COL8_FFFFFF, 0, ysize -27, xsize - 1, ysize -27); boxfill8(vram, xsize, COL8_C6C6C6, 0, ysize -26, xsize - 1, ysize - 1); boxfill8(vram, xsize, COL8_FFFFFF, 3, ysize -24, 59, ysize -24); boxfill8(vram, xsize, COL8_FFFFFF, 2, ysize -24, 2, ysize - 4); boxfill8(vram, xsize, COL8_848484, 3, ysize - 4, 59, ysize - 4); boxfill8(vram, xsize, COL8_848484, 59, ysize -23, 59, ysize - 5); boxfill8(vram, xsize, COL8_000000, 2, ysize - 3, 59, ysize - 3); boxfill8(vram, xsize, COL8_000000, 60, ysize -24, 60, ysize - 3); boxfill8(vram, xsize, COL8_848484, xsize -47, ysize -24, xsize - 4, ysize -24); boxfill8(vram, xsize, COL8_848484, xsize -47, ysize -23, xsize -47, ysize - 4); boxfill8(vram, xsize, COL8_FFFFFF, xsize -47, ysize - 3, xsize - 4, ysize - 3); boxfill8(vram, xsize, COL8_FFFFFF, xsize - 3, ysize -24, xsize - 3, ysize - 3); for (; ; ) { io_hlt(); } }

任務條(task bar)有點大了,這是因為像素數太少的緣故吧。但很有進步,已經有點操作系統的樣子了。總算到了這一步。從什么都不會開始,到現在只用了四天。嗯,干得不錯嘛。現在的haribote.sys是1216字節,大概是1.2KB吧。雖然這個操作系統很小,但已經有這么多功能了。好,今天先到此為止,明天再見啦。
推薦閱讀
- Kubernetes修煉手冊
- 全屋互聯:智能家居系統開發指南
- Mastering ElasticSearch
- 樂學Windows操作系統
- Linux網絡操作系統與實訓(第三版)
- Implementing Azure DevOps Solutions
- 精解Windows8
- Instant Optimizing Embedded Systems using Busybox
- Linux使用和管理指南:從云原生到可觀測性
- Microsoft Operations Management Suite Cookbook
- Mastering Reactive JavaScript
- Windows 7應用入門與技巧
- Linux從入門到精通(視頻教學版)
- Android應用性能優化最佳實踐
- OpenHarmony開發與實踐:基于紅莓RK2206開發板