现在已经基本完成了Lava主要函数的编写,但还是有几个问题没解决:
1、实心圆和实心椭圆
2、FillArea
3、GetWord
其中FillArea如果没有很好的解决方法就算了,GetWord用getchar代替算了。
另外WriteBlock函数我觉得还有点问题,效率不高,尤其是缓冲区绘图部分,目前对于非对齐字节使用画点函数实现,还有待优化。
昨天把《博士失踪记》放进去,图形显示有点问题,原因是Lava有个类似指针的东西,但那是数据地址,图片数据用了int型数组储存,在c语言中直接强制类型转化为char会丢失一字节,尝试几次没解决后把这段数据编译出来再导出char型数据类型,虽然有点笨,但还是正常跑起来了,有点欣慰的样子。
实际上,之前的这些工作还只是开始,接下来加载lav文件并解释运行才是关键。今天都只是做了些修修补补的工作,修复了几个bug,优化了下putchar的速度,迟迟还没动工去运行lav文件,感觉任务还有点艰巨啊。