6410 Eboot 显示图片
来源:互联网 发布:ios app制作软件 编辑:程序博客网 时间:2024/06/06 01:35
在Eboot里面显示图片,如果要显示一些非全屏大小的图片,感觉不是很爽,所以封装了几个函数,用于显示图片,或者画图用。
屏幕大小是320*240的,这样的屏幕,画的时候在屏幕的左上角开始往右边画,画完一行,接着画下一行。要显示的图片,需要先转成对应的数组。这里使用的是bmp2c.exe软件。由于,屏幕打竖来放,即变成240*320。这样子的话,做出来的图片需要逆时针旋转90度之后,才能够转换成对应的数组。
下面的函数支持全屏或非全屏的图片或颜色显示
其中的几个关键函数如下:
// 显示图片BOOL ShowPicture(int startX, int startY, int width, int high, const unsigned short *picture){unsigned int *pFB;int i,j;if(startX>320 || startY>240)return FALSE;if(picture == NULL)return FALSE;pFB = (unsigned int *)EBOOT_FRAMEBUFFER_UA_START;for(j=0; j<high; j++){for(i=0; i<width; i++){UpDataBitmaptmp4=(int)picture[i+j*width];UpDataBitmaptmp=(((UpDataBitmaptmp4>>11)<<19)|(((UpDataBitmaptmp4>>5)&0x3F)<<10)|((UpDataBitmaptmp4&0x1F)<<3)|0x0);*(pFB+(startY*320+startX)+j*320+i) = UpDataBitmaptmp;}}}// 显示颜色BOOL ShowColor(int startX, int startY, int width, int high, const unsigned short color){unsigned int *pFB;int i,j;if(startX>320 || startY>240)return FALSE;pFB = (unsigned int *)EBOOT_FRAMEBUFFER_UA_START;for(j=0; j<high; j++){for(i=0; i<width; i++){UpDataBitmaptmp4=(int)color;UpDataBitmaptmp=(((UpDataBitmaptmp4>>11)<<19)|(((UpDataBitmaptmp4>>5)&0x3F)<<10)|((UpDataBitmaptmp4&0x1F)<<3)|0x0);*(pFB+(startY*320+startX)+j*320+i) = UpDataBitmaptmp;}}}// 清屏void ClearScreen(){unsigned int *pFB;volatile unsigned long i=0;pFB = (unsigned int *)EBOOT_FRAMEBUFFER_UA_START;for(i=0; i<76800; i++){*(pFB+i)=0x00000000;}}
上述函数中的参数说明:
startX : 图片开始的X坐标(以屏幕为320*240为准)
startY : 图片开始的Y坐标
width : 图片的宽度(旋转后的图片宽度)
high : 图片的高度(旋转后的图片高度)
picture : 图片对应的数组指针
color : 颜色值。0xFFFF表示白色,0x0000表示黑色
- 6410 Eboot 显示图片
- 6410 Eboot 添加键盘控制
- 6410的eboot阶段av输出
- 图片显示
- 显示图片
- 图片显示
- 图片显示
- 图片显示
- 图片显示
- 显示图片
- 图片显示
- 显示图片
- 图片显示
- 图片显示
- 显示图片
- 图片显示
- 图片显示
- 图片显示
- 一个资深SOHO程序员对新人的建议
- 机器人之旅:当Arduino遇上Android
- c++ 读写文件
- Google 确认 Chrome 即将支持 GPU 硬件加速
- linux下的文件和目录权限
- 6410 Eboot 显示图片
- myeclipse构建mvaen
- 请饶了刚刚步入大学校门的学生吧
- 【HUI】Tooltip(提示组件)——2.Tooltip in CSS2(优化方案)
- 7890
- 手机实名制不是一劳永逸的防火墙
- 关于 DTFT 和 DFT
- jrtp编译配置
- Professional.jQuery