5857|17

67

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

wince显示驱动Rotate问题 [复制链接]

在wince下面有一个RotateScreen.exe
系统默认的是横屏,横屏状态下,一切OK。
但是切换到竖屏之后,一般的应用程序也是OK的,但是,像视频播放和一些与Overlay相关的DDraw程序就会运行错误
甚至直接花屏,这个是什么原因啊,这个Rotate在显示驱动上面究竟改变了什么东东
求教高手!
此帖出自WindowsCE论坛

最新回复

jinlking, 这个问题现在解决了吗?  详情 回复 发表于 2009-12-24 14:58
点赞 关注
 

回复
举报

70

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
我的wince中没见到这个程序。
此帖出自WindowsCE论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
是不是要对应修改注册表
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

4
 
这个微软的DDraw,没有对下面的overlay封装好,导致这种问题了。
此帖出自WindowsCE论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

5
 
引用 3 楼 jinlking 的回复:
这个微软的DDraw,没有对下面的overlay封装好,导致这种问题了。

解决了么?
此帖出自WindowsCE论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

6
 
这会是MS的问题吗?我倒觉得可能是显示的驱动中对旋转的处理可能有些问题
此帖出自WindowsCE论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

7
 
如果有异常错误可以定位下错误的位置
此帖出自WindowsCE论坛
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

8
 
我在HTC机器上测试没有发现楼主说的问题
应该是显示驱动的BUG
不知道楼主使用的是什么信号的Mobile,显示驱动用的是哪个?
此帖出自WindowsCE论坛
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

9
 
WINCE600\PUBLIC\DIRECTX\SDK\SAMPLES\DDRAW\SRC\MOSQUITO
我把这个编译好了之后,横屏下面运行正常,运行的时候点击Rotate 90,屏幕立刻花掉
后来我先把屏幕转成竖屏,然后运行程序,屏幕也花掉。
其他的DirectDraw程序正常,但是只要与Overlay相关就出问题,debug调试,发现错误在overlay->UpdateOverlay
我怀疑,是不是转屏之后原本的overlay层就被转过来的竖屏占用了,然后竖屏下面任何overlay的操作就会失败。
此帖出自WindowsCE论坛
 
 
 

回复

89

帖子

0

TA的资源

一粒金砂(初级)

10
 
顶起来
此帖出自WindowsCE论坛
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

11
 
屏幕旋转的内容好像都是在LCD驱动中实现的,是不是驱动没写好啊。
此帖出自WindowsCE论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

12
 
有可能是驱动的问题
此帖出自WindowsCE论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

13
 
问题解决了么?
此帖出自WindowsCE论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

14
 
问题还没有解决啊
我的芯片支持5层屏幕,操作系统一般用的是win1

在横屏下面运行我的程序创建OSD层,发现win0和win1都在使用,程序运行正常。
在竖屏下面,没有运行之前,发现只有win1,运行之后,程序会在
hRet = g_pDDSOverlay->UpdateOverlay(&rs, g_pDDSPrimary, &rd, dwUpdateFlags, &ovfx);出现花屏
并且这句返回是没有错误的

这个时候在驱动中,有个Setwindowposition的IOContorl出现错误,timeout陷入死循环。
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

15
 
横竖屏的转换究竟作了些什么
横竖之间的转换是通过ChangeDisplaySettingsEx
此帖出自WindowsCE论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

16
 
应该是修改了GPE中framebuffer的算法.sirf的BSP做旋转就是在display里的GPE下的一个CPP里修改的FrameBuffer的操作,根据旋转角度来重新处理framebuffer里的每个字节的值.
至于是不是和overlay冲突,没有试验过.不过sirf做的这个功能未完成(在A3的BSP中,不知道为什么未完成)
此帖出自WindowsCE论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

17
 
ChangeDisplaySettingsEx和DDraw是不是不能共存啊?
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

18
 
jinlking, 这个问题现在解决了吗?
此帖出自WindowsCE论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表