简单的说,这个图形库用于在没有文字显示BIOS的CPU上显示文字的。目前完成了以下工作:
英文8x12点阵的提取
宋体16x16点阵的提取(一个VB小程序),目前做了一级字库
LCD初始化(抄来的)
描点(抄来的)
描线(抄来的)
矩形(抄来的)
实心矩形(抄来的)
清屏(抄来的)
位图图片(抄来的)
英文显示
中文显示
更换颜色,前景/背景
文字透明
还需要加入的功能:
屏幕滚动(即翻页)
屏幕保存/恢复(用于实现双缓冲、视频缓冲、直接写屏)
绘制窗体
触摸笔(快成形了)
本来,[tc]以为这些代码很好找的,结果处处碰壁。在u龙那里,虽然得到一份差不多用途的东西,可惜是编译好的库文件,不提供代码。一气之下,[tc]自己写了这份代码,深感屏幕存取之效率低下,没有显卡的日子,难!
下面第一张图是昨天,为调试方便写的引导程序的图形界面部分。
第二张是刚刚实现的成果,似乎实际效果更好一些。不过我这样说也没人相信。
在这份成果上,只要将config.h中的#define CHINESE_SUPPORT 1去掉,就会变成第三幅图的样子,目标代码将会减小将近200K。

7 条评论:
哎 ┐(- -)┌
苹果的标志及windows me风格的色快……
某[tc]囧同学的UI设计能力稍微有一点提高,已经进入了由中国特色的设计者队伍了。
我晕,那个色块是用来测试[tc]的RGB()函数是否正常工作的好不好!
还有啊,这个画面根UI也没什么关系,说到底,现在这个模式是Supervisor模式,相当于x86的实模式,跟DOS一个性质,我搞成这样很不容易的~~
那么请你来帮我写窗口部分要不要?
你这个东西能用多久?分辨率?
什么叫“能用多久”?
分辨率受到液晶屏的限制,是240x320。
关于窗口模式,[tc]准备转向uc/GUI或者Linux的怀抱。WinCE.net也是备选方案,只不过M$的这款系统……啧啧啧,等我研究清楚了再作评论。
为什么不取12x12的子模,会好看一点。
第三幅图上有台灯(?)的反光。
12x12会比较好?当真?早讲啊!我下一个版本改过来!
12x可以跟一个英文的尺寸的统一起来,不过要克服一些困难,我以为国标是16x比较好。
有个台灯是因为其他角度出现了弧装的干涉纹路。
发表评论