我的学习之旅(19)console.h和console.c
来源:互联网 发布:java base64加密图片 编辑:程序博客网 时间:2024/06/16 12:36
/*屏幕向上翻一行,等同于屏幕向下移动一行*/static void screen_up(void){ int i; unsigned char *src; unsigned char *dest; unsigned int len; /*是否需要整个屏幕向上翻一行*/ if ( g_screen_top == 0 && g_screen_bottom == DISP_MAX_Y ) { //刷新屏幕在显存中位置 g_screen_origin += BYTES_FOR_ONE_LINE; g_screen_end += BYTES_FOR_ONE_LINE; /*刷新光标位置为换行*/ g_position += BYTES_FOR_ONE_LINE; if( g_screen_end > DISP_END_ADDR ) {/*如果屏幕在显存中位置超出了显存本身的范围*/ /*将屏幕内容刷新到DISP_BASE_ADDR处*/ src = (unsigned char *)g_screen_origin; dest = (unsigned char *)DISP_BASE_ADDR; len = (g_screen_end - g_screen_origin); for(i = 0; i < len; i++) { dest[i] = src[i]; } /*刷新光标位置和屏幕起始和结束地址*/ g_screen_end = DISP_BASE_ADDR + len; g_position = DISP_BASE_ADDR + (g_position - g_screen_origin); g_screen_origin = DISP_BASE_ADDR; } else { } set_screen_origin(1); } else { /*不支持*/ }}/*屏幕向下翻一行*/static void screen_down(void){}static void add_a_line(void){ /*如果不是最底下的一行*/ if( g_y + 1 < DISP_MAX_Y ) { g_y++; g_position += BYTES_FOR_ONE_LINE; return; } /*否则就要刷新整个屏幕的数据*/ screen_up();}//用空格字符填充被删除的字符static void delete_char(void){ if( g_x > 0 ) { g_position -= 2; g_x--; *(unsigned short *)g_position = ((DISP_FG_WHITE + DISP_BG_BLACK) << 8 )|(0x20);//0x20是空格字符 } return;}
0 0
- 我的学习之旅(19)console.h和console.c
- 我的学习之旅(17)console.h和console.c
- 我的学习之旅(18)console.h和console.c
- 我的学习之旅(20)console.h和console.c
- 我的学习之旅 keyboard.h和keyboard.c
- 我的学习之旅keyboard.h和keyboard.c
- 我的学习之旅 keybaord.h和keyboard.c
- Console.read()、Console.readline()、Console.readkey()和Console.Write()、Console.Writeline()的区别
- Console.read()、Console.readline()、Console.readkey()和Console.Write、Console.Writeline()的意思
- console.dir()和console.log()的区别
- console.dir()和console.log()的区别
- Console学习
- 我的学习之旅(16)stdarg.h和vsprintf.c
- 我的学习之旅(23)traps.c和 start32.h
- include/console.h
- include/console.h
- console
- Console
- Eclipse使用JUnit4进行单元测试
- broswer学习
- MONO For Android学习笔记之使用Location服务获取位置
- Paraview Parallel模式下的文件解析(五)
- nginx的配置与应用(ip_hash与session篇)
- 我的学习之旅(19)console.h和console.c
- 15Mbps!台湾网友33公里无线网络传输实测
- Sql Server生成测试数据
- 每天一点hadoop 第十篇HDFS(六)
- 应用 Valgrind 发现 Linux 程序的内存问题
- File "scripts/rule_bison.py", line 75, in <module>
- 成交型网站 设计
- 通用service编写时baseDao注入问题
- SqlDataReader类使用