2440 6.0BSP 移植过程之显示驱动篇
//-----------------------------------------------------------------------------------------------------------
// 作者:wogoyixikexie@gliet
//论坛账号:gooogleman (经常在CSDN出没)
// 版权:桂林电子科技大学一系科协wogoyixikexie@gliet
// 平台:wince5.0 2440 5.0 BSP
// 发布日期:2009年6月18日 9:49:38
// 最后修改:
// 注意事项:未经作者同意,不得在转载的时候擅自修改、删除文章的任何部分
//-----------------------------------------------------------------------------------------------------------
作者:wogoyixikexie@gliet(注意转载请标明原创作者)
OAL可行之后,下一步就是显示驱动,先看到桌面再说了,
把5.0BSP显示驱动复制过来,直接编译,晕啊,好多错误啊!
BUILD: [Thrd:Sequence:Type ] Message
BUILD: [01:0000000042:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'DEVMODEW' : undeclared identifier
BUILD: [01:0000000043:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'pdm' : undeclared identifier
BUILD: [01:0000000044:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000046:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2146: syntax error : missing ')' before identifier 'pwszLogAddress'
BUILD: [01:0000000048:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2078: too many initializers
BUILD: [01:0000000049:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000051:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(459) : error C2059: syntax error : ')'
BUILD: [01:0000000052:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(472) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000053:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(823) : error C2059: syntax error : ','
BUILD: [01:0000000054:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(840) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000055:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(863) : error C2146: syntax error : missing ';' before identifier 'DrvEnablePDEV'
BUILD: [01:0000000056:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\gpe.h(246) : error C2065: 'DMDO_0' : undeclared identifier
BUILD: [01:0000000057:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(537) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000058:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(540) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000059:ERRORE] h:\wince600\platform\qxce6bsp\src\drivers\display\precomp.h(30) : fatal error C1083: Cannot open include file: 'ddpguids.h': No such file or directory
BUILD: [01:0000000063:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'DEVMODEW' : undeclared identifier
BUILD: [01:0000000064:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'pdm' : undeclared identifier
BUILD: [01:0000000065:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000067:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2146: syntax error : missing ')' before identifier 'pwszLogAddress'
BUILD: [01:0000000069:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2078: too many initializers
BUILD: [01:0000000070:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000072:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(459) : error C2059: syntax error : ')'
BUILD: [01:0000000073:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(472) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000074:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(823) : error C2059: syntax error : ','
BUILD: [01:0000000075:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(840) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000076:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(863) : error C2146: syntax error : missing ';' before identifier 'DrvEnablePDEV'
BUILD: [01:0000000077:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\gpe.h(246) : error C2065: 'DMDO_0' : undeclared identifier
BUILD: [01:0000000078:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(537) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000079:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(540) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000080:ERRORE] h:\wince600\platform\qxce6bsp\src\drivers\display\precomp.h(30) : fatal error C1083: Cannot open include file: 'ddpguids.h': No such file or directory
BUILD: [01:0000000084:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'DEVMODEW' : undeclared identifier
BUILD: [01:0000000085:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'pdm' : undeclared identifier
BUILD: [01:0000000086:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000088:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2146: syntax error : missing ')' before identifier 'pwszLogAddress'
BUILD: [01:0000000090:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2078: too many initializers
BUILD: [01:0000000091:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000093:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(459) : error C2059: syntax error : ')'
BUILD: [01:0000000094:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(472) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000095:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(823) : error C2059: syntax error : ','
BUILD: [01:0000000096:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(840) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000097:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(863) : error C2146: syntax error : missing ';' before identifier 'DrvEnablePDEV'
BUILD: [01:0000000098:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\gpe.h(246) : error C2065: 'DMDO_0' : undeclared identifier
BUILD: [01:0000000099:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(537) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000100:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(540) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000101:ERRORE] h:\wince600\platform\qxce6bsp\src\drivers\display\precomp.h(30) : fatal error C1083: Cannot open include file: 'ddpguids.h': No such file or directory
BUILD: [01:0000000105:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'DEVMODEW' : undeclared identifier
BUILD: [01:0000000106:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'pdm' : undeclared identifier
BUILD: [01:0000000107:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000109:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2146: syntax error : missing ')' before identifier 'pwszLogAddress'
BUILD: [01:0000000111:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2078: too many initializers
BUILD: [01:0000000112:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000114:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(459) : error C2059: syntax error : ')'
BUILD: [01:0000000115:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(472) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000116:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(823) : error C2059: syntax error : ','
BUILD: [01:0000000117:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(840) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000118:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(863) : error C2146: syntax error : missing ';' before identifier 'DrvEnablePDEV'
BUILD: [01:0000000119:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\gpe.h(246) : error C2065: 'DMDO_0' : undeclared identifier
BUILD: [01:0000000120:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(537) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000121:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(540) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000122:ERRORE] h:\wince600\platform\qxce6bsp\src\drivers\display\precomp.h(30) : fatal error C1083: Cannot open include file: 'ddpguids.h': No such file or directory
BUILD: [01:0000000126:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'DEVMODEW' : undeclared identifier
BUILD: [01:0000000127:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'pdm' : undeclared identifier
BUILD: [01:0000000128:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000130:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2146: syntax error : missing ')' before identifier 'pwszLogAddress'
BUILD: [01:0000000132:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2078: too many initializers
BUILD: [01:0000000133:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000135:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(459) : error C2059: syntax error : ')'
BUILD: [01:0000000136:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(472) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000137:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(823) : error C2059: syntax error : ','
BUILD: [01:0000000138:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(840) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000139:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(863) : error C2146: syntax error : missing ';' before identifier 'DrvEnablePDEV'
BUILD: [01:0000000140:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\gpe.h(246) : error C2065: 'DMDO_0' : undeclared identifier
BUILD: [01:0000000141:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(537) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000142:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(540) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000143:ERRORE] h:\wince600\platform\qxce6bsp\src\drivers\display\precomp.h(30) : fatal error C1083: Cannot open include file: 'ddpguids.h': No such file or directory
BUILD: [01:0000000147:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'DEVMODEW' : undeclared identifier
BUILD: [01:0000000148:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(448) : error C2065: 'pdm' : undeclared identifier
BUILD: [01:0000000149:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000151:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2146: syntax error : missing ')' before identifier 'pwszLogAddress'
BUILD: [01:0000000153:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2078: too many initializers
BUILD: [01:0000000154:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(449) : error C2275: 'LPWSTR' : illegal use of this type as an expression
BUILD: [01:0000000156:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(459) : error C2059: syntax error : ')'
BUILD: [01:0000000157:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(472) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000158:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(823) : error C2059: syntax error : ','
BUILD: [01:0000000159:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(840) : error C2061: syntax error : identifier 'DEVMODEW'
BUILD: [01:0000000160:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\winddi.h(863) : error C2146: syntax error : missing ';' before identifier 'DrvEnablePDEV'
BUILD: [01:0000000161:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\inc\gpe.h(246) : error C2065: 'DMDO_0' : undeclared identifier
BUILD: [01:0000000162:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(537) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000163:ERRORE] H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\sdk\inc\ddraw.h(540) : error C2061: syntax error : identifier 'LPRGNDATA'
BUILD: [01:0000000164:ERRORE] h:\wince600\platform\qxce6bsp\src\drivers\display\precomp.h(30) : fatal error C1083: Cannot open include file: 'ddpguids.h': No such file or directory
网友说要加入shell 等组件,并且clean sysgen 才不会报上面的错误的。
先尝试一下。
错误 19 fatal error C1083: Cannot open include file: 'ddpguids.h': No such file or directory h:\wince600\platform\qxce6bsp\src\drivers\display\precomp.h 30
——————————————加入 shell 和显示驱动 clean sysgen。发现好多这个错误。
估计是路径问题,
找了好久都找不到原因,干脆拿着ztg0021的代替,终于编译通过了,打包,下载,咋了?还是和上次一样,打开nk.bin,发现显示驱动DLL没有打包进去。晕,真是啊,clean sysgen不会把 file文件夹下的东西复制到工程,教训。
手动复制过去之后 打包出现如下错误。
错误 1 regcomp: Error: InitRegistry FAILED on or near line 2528 of H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\RelDir\QxCE6BSP_ARMV4I_Debug\reginit.ini. H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\RelDir\QxCE6BSP_ARMV4I_Debug\reginit.ini. 1
打开reginit.ini看2528 行 发现是"Manufacturer"=LOC_USBFN_RNDIS_MANUFACTURER 出问题,查找wince5.0的LOC_USBFN_RNDIS_MANUFACTURER发现在BSPname\FILES\Intltrns 下定义了,现在把模拟器的
H:\WINCE600\PLATFORM\QxCE6BSP\FILES\Intltrns换成5.0 BSP的试试
晕倒,又来了新错误。
错误 1 Error: Could not open 'H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\RelDir\QxCE6BSP_ARMV4I_Debug\NK.bin' for writing
上面问题重启VS2005 就不会了。
但是打开NK.bin 还是没有发现显示驱动DLL
仔细盘查platform.bib
发现少了
MODULES
; Name Path Memory Type
; -------------- ---------------------------------- -----------
希望加入就可以了,别折磨我了。先试试。
哎,这次nk.bin是有显示驱动DLL了,可是不知道咋回事,在启动的时候并没有加载它。
why?
晕,发现nk.bin中没有GWES.DLL这个是加载 显示驱动的,没有这个是不行的。哈哈,赶紧弄弄。
ceconfig.h里面没有CE_MODULES_GWES的设置,说明这个环境变量没有得到设置。真是累死人了,别人发过来的图片也一样。
CE_MODULES_GWES这个环境变量有点奇怪,不是在组件选择里面的。
我重新生成工程,发现
PREROMIMAGE processing...
PREROMIMAGE calling QxCE6BSP-preri.bat
***
*** Selecting KITL transport to include in image (Ethernet or DMA)
***
BSP_KITL_DMA=1; copy kitldma.dll kitl.dll
makeimg: run command: romimage H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\RelDir\QxCE6BSP_ARMV4I_Debug\ce.bib
Windows CE ROM Image Builder v4.0.120 Copyright (c) Microsoft Corporation
Built: Jul 25 2006 16:37:02
Error: Could not find file 'H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\RelDir\QxCE6BSP_ARMV4I_Debug\kitl.dll' on disk
kitl.dll H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\RelDir\QxCE6BSP_ARMV4I_Debug\kitl.dll NK SHZ
Error: failed setting line
makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec).
makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec).
——看来是QxCE6BSP-preri.bat这个的设置问题,看看去。
解决办法:恢复 KITL文件夹,并且保留模拟器的KITL代码,到时候自己在改动了。
哎,真是无语,我的工程编译的是KITL版本,而我把KITL相关的代码删除了,真是雷人。犯了低级错误,还不断的修改批处理文件,真是累死人了。
终于把GWES相关弄上去了NK.bin也变成了12M
显示加载失败了。
FILESYS: SignalStarted loop = 1
FILESYS: Launching gwes.dll
Filesys: Loaded gwes.dll
Ceddk!CalibrateStallCounter: Enter
Ceddk!CalibrateStallCounter: Stall counter loaded from registry(22)
System Default HKL value set to 00000409
Grow Gdi handle table from 0 to 64
LogFontFromRegistry(SYSTEM\GDI\SysFnt), lfHeight = -12s3c2440disp: display instance '<NULL>', num monitors 1
S3C2440DISP: DisplayInit: can't open 'Drivers\Display\S3C2440\CONFIG'
-DisplayInit
*** COULD NOT INITIALIZE DISPLAY DRIVER (S3C2440DISP.dll)! ***
*** MAKE SURE DISPLAY DRIVER CONFIGURATION SETTINGS ARE CORRECT! ***
Unknown: DEBUGCHK failed in file C:\ymzki\private\winceos\COREOS\gwe\mgdi\base\.\driver.cpp at line 118
DEBUG_BREAK @c01fe3f8 Ignored.
Unknown: DEBUGCHK failed in file C:\ymzki\private\winceos\COREOS\gwe\mgdi\base\.\driver.cpp at line 121
DEBUG_BREAK @c01fe438 Ignored.
DEBUG_BREAK @c01e8234 Ignored.
*** ATTEMPTING TO LOAD DISPLAY DRIVER DDI.DLL! ***
*** COULD NOT LOAD DISPLAY DRIVER (DDI.DLL)! ***
*** ATTEMPTING TO LOAD DISPLAY DRIVER DDI_NOP.DLL! ***
*** COULD NOT LOAD DISPLAY DRIVER (DDI_NOP.DLL)! ***
*** GWES FAILED TO LOAD A DISPLAY DRIVER!!! PREPARE FOR MAYHEM!!! ***
Unknown: DEBUGCHK failed in file C:\ymzki\private\winceos\COREOS\gwe\mgdi\base\.\gdi.cpp at line 2635
DEBUG_BREAK @c022fbd8 Ignored.
Coredll: DEBUGCHK failed in file c:\yzkiqfe\private\winceos\coreos\core\dll\cscode.c at line 169
DEBUG_BREAK @c00550c8 Ignored.
Exception 'Data Abort' (4): Thread-Id=00f2000a(pth=835c1000), Proc-Id=00400002(pprc=80e18aa0) 'NK.EXE', VM-active=00400002(pprc=80e18aa0) 'NK.EXE'
PC=c028149c(gwes.dll+0x000c149c) RA=c0281458(gwes.dll+0x000c1458) SP=d04cfc64, BVA=00000104
RtlDispatchException: returning failure. Flags=0
Unhandled exception c0000005:
Terminating thread 835c1000
Secondary thread in proc 00400002 faulted, Exception code = c0000005, Exception Address = c028149c!
Terminating Thread 00f2000a
CSDN-XXXX-广州 说:
S3C2440DISP: DisplayInit: can't open 'Drivers\Display\S3C2440\CONFIG'
CSDN-XXXX-广州 说:
你的注册表有没有这一项:
[HKEY_LOCAL_MACHINE\Drivers\Display\S3C2440\CONFIG]
CSDN-XXXX-广州 说:
我的platform.reg里有这个:
[HKEY_LOCAL_MACHINE\Drivers\Display\S3C2440\CONFIG]
"DisplayDll"="s3c2440a_lcd.dll"
"LCDVirtualFrameBase"=dword:ac100000
---------------------------ooooooo--------------------------
加入如下注册表
[HKEY_LOCAL_MACHINE\Drivers\Display\S3C2440\CONFIG]
"DisplayDll"="S3C2440DISP.dll"
"LCDVirtualFrameBase"=dword:A0100000
"LCDPhysicalFrameBase"=dword:30100000
[HKEY_LOCAL_MACHINE\System\GDI\Drivers]
"Display"="S3C2440DISP.dll"
"DisplayPowerClass"="{EB91C7C9-8BF6-4a2d-9AB8-69724EED97D1}"
成功进入桌面了——不过显示出一些我的设备,并且显示一塌糊涂,不过看上去很有希望,因为已经是模糊的桌面了。哈哈。
CSDN博客现在还上不了。不然立即修改正常他。
我修改了S3C2440DISP.dll初始化屏幕大小的部分,窗口就能适应屏幕大小了,可是背景图片很大,不能显示完全,不知道怎么回事,不管了先KITL了。
晕,现在LCD黑屏了,why?刚才还是亮着的。
我这样屏蔽如下代码之后
case IOCTL_POWER_SET:
#if 0
if(pvOut != NULL && cjOut == sizeof(CEDEVICE_POWER_STATE))
{
__try
{
CEDEVICE_POWER_STATE NewDx = *(PCEDEVICE_POWER_STATE) pvOut;
CEDEVICE_POWER_STATE CurrentDx;
if(VALID_DX(NewDx))
{
VIDEO_POWER_STATE ulPowerState = PmToVideoPowerState(NewDx);
SetDisplayPower(ulPowerState);//这是导致黑屏的原因
CurrentDx = VideoToPmPowerState((VIDEO_POWER_STATE)m_VideoPowerState);
Result = ESC_SUCCESS;
RETAILMSG(DBGLCD, (L"%s: IOCTL_POWER_SET %u: passing back %u\r\n", pszFname,
NewDx, CurrentDx));
}
else
{
RETAILMSG(DBGLCD,
(L"%s: IOCTL_POWER_SET: invalid state request %u\r\n", pszFname, NewDx));
}
}
__except(EXCEPTION_EXECUTE_HANDLER)
{
RETAILMSG(DBGLCD, (L"%s: exception in ioctl3\r\n"));
}
}
#endif
break;
会打印如下信息,并且LCD不会再黑屏,这就证明了,是电源挂起造成LCD黑屏的。只要删除SetDisplayPower相关代码就不会黑屏!
168626 PID:400002 TID:1320002 RequestDisplayDevice: DeviceIoControl(3280904) to 0x0002002e failed 0 (0x00000000)
168628 PID:400002 TID:1320002 SetDevicePower: '\release\s3c2440disp.dll' failed IOCTL_POWER_SET D4, status is 31
这个应该不影响使用的。哈哈,到时候再设置注册表部分吧。