久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区


曙海教育集團(tuán)論壇Win CE 專區(qū)WinCE應(yīng)用開發(fā) → 我的 ARM-WinCE 編程探索之旅(二)


  共有9140人關(guān)注過本帖樹形打印

主題:我的 ARM-WinCE 編程探索之旅(二)

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
我的 ARM-WinCE 編程探索之旅(二)  發(fā)帖心情 Post By:2010-11-26 10:04:49

前幾天,我的HP 1715終于修好了,重新?lián)Q了塊屏,解決了觸屏失靈及自己拆機(jī)把背光弄沒的問題(在 pdafans 上詢問多日,毫無結(jié)果)。我的編程探索又可以繼續(xù)了。
經(jīng)過多次測(cè)試,找到了使用 FPC(Free Pascal Compiler)加 SDL(SImple DirectMedia Layer)進(jìn)行 ARM-WinCE 圖象編程的途徑(最終,建立過程中還是不得不借助于M$的開發(fā)工具eVC)。

1、從 http://www.libsdl.org/download-1.2.php 下載最新的 SDL 1.2.13 源碼,解壓其中 src 和 include 到 c:\,解壓其中 visualce.zip 到 c:\VisualCE。

2、下載并安裝eMbedded Visual C++ 4.0(同時(shí)附帶安裝了Platform SDK),運(yùn)行,打開WorkSpace文件 c:\VisualCE\*.vcw,修改工程配置為 arm4,release,然后 Build SDL.DLL,生成 ARM-WinCE 下用的 SDL.DLL,約220K大小,將 SDL.DLL 拷入 PPC。

3、從 http://www.hu.freepascal.org/lazarus/ 下載并安裝最新的 Lazarus + fpc 2.2.5 win32 -> arm wince。修改 \lazarus\fpc\2.2.5\source\packages\sdl\src\sdl.pas 的源碼,注釋掉連續(xù)的多個(gè) *getenv 和 *putenv 二函數(shù),再用 ppcrossarm.exe 編譯 sdl.pas,得到libimpsdl.a、sdl.o、sdl.ppu三個(gè)文件,覆蓋原 \lazarus\fpc\2.2.5\units\arm-wince\sdl\ 下的文件。

至此,F(xiàn)PC+SDL的WinCE圖形編程環(huán)境構(gòu)建完成。

接下來,將前些日子根據(jù) PGCC 示例用 FPC 改寫的一個(gè)簡(jiǎn)單的桌面版 SDL 測(cè)試程序,重新用 ppcrossarm.exe 編譯,生成的EXE文件大小為82K,只導(dǎo)入了額外的 SDL.DLL(前面已經(jīng)放入PPC),在PPC上運(yùn)行通過。運(yùn)行時(shí)會(huì)先出現(xiàn) SDL 初始化的控制臺(tái)窗口,顯示一些視頻信息(桌面版的SDL也是如此,類似于dosbox的運(yùn)行),其運(yùn)行結(jié)果是每秒20次在全屏幕上顯示隨機(jī)大小、隨機(jī)顏色的方塊,按任意鍵或觸筆點(diǎn)擊退出。

下面是昨天晚上最后的程序源碼(在事件查詢循環(huán)上好像有點(diǎn)邏輯問題,有時(shí)候退不出程序,待修正):
  1. program Test;
  2. uses windows, sysutils, sdl;

  3. var
  4.         screen: PSDL_Surface;
  5.         event: TSDL_Event;
  6.         draw_count:int64=0;
  7.         done:boolean;
  8.         l,t:integer;

  9. procedure Draw_Box(screen:PSDL_Surface; x,y,w,h:dword; r,g,b:dword);
  10. var
  11.         p:PByte;
  12.         p2:PWord;
  13.         i,j:dword;
  14.         c:dword;
  15. begin
  16.         if SDL_MUSTLOCK(screen) then begin
  17.                 if SDL_LockSurface(screen) < 0 then exit;
  18.         end;

  19.         c := SDL_MapRGB(screen^.format, R, G, B);
  20.         assert (screen^.format^.BytesPerPixel=2);
  21.         p := screen^.pixels + y*screen^.pitch + x*screen^.format^.BytesPerPixel;
  22.         for j:=1 to h do begin
  23.                 p2:=PWord(p);
  24.                 for i:=1 to w do begin
  25.                         p2^:=c;
  26.                         inc(p2);
  27.                 end;
  28.                 inc(p,screen^.pitch);
  29.         end;

  30.         if SDL_MUSTLOCK(screen) then SDL_UnlockSurface(screen);
  31.         SDL_UpdateRect(screen, x, y, w, h);
  32. end;

  33. procedure HandleKey(key: TSDL_KeyboardEvent);
  34. begin
  35.         done:=true;
  36. end;

  37. //main at here
  38. begin
  39.         SDL_Init(SDL_INIT_VIDEO or SDL_INIT_AUDIO);
  40.         screen := SDL_SetVideoMode(320, 240, 16, SDL_HWSurface);
  41.         SDL_WM_SetCaption('My SDL',nil);

  42.         while not done do begin
  43.                 //Set_Pixel(screen,random(320),random(240),random(255),random(255),random(255));
  44.                 l:=random(320-40);
  45.                 t:=random(240-30);

  46.                 Draw_Box(Screen,l,t,random(320-40-l)+41,random(240-30-t)+31,random(255),random(255),random(255));
  47.                 inc(draw_count);
  48.                 while SDL_PollEvent(@event)<>0 do begin
  49.                               case event.type_ of
  50.                               SDL_MouseButtonDown,
  51.                                 SDL_QUITEV, SDL_KEYDOWN,SDL_KEYUP: done := true;
  52.                                       //handleKey(event.key);
  53.                         end;
  54.                 end;
  55.                 SDL_Delay(50);
  56.         end;

  57.         SDL_Quit();
  58. end.
復(fù)制代碼
接下來打算搞點(diǎn)有實(shí)際用處的程序,比如說一個(gè)文本閱讀器,使用24點(diǎn)陣字體;還要嘗試是否能將一些 sdl 輔助庫(比如:SDL_Mixer)編譯成 ARM-WinCE 可用的 DLL。


支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

我的 ARM-WinCE 編程探索之旅(二)








簽名
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
亚洲婷婷综合色高清在线| 久久久久88色偷偷免费| 免费日韩电影在线观看| 久久99精品国产一区二区三区| 俄罗斯精品一区二区| 欧美日本国产精品| 亚洲一区二区三区涩| 欧美精品乱码久久久久久| 日韩欧美一区中文| 中文字幕精品一区二区三区精品| 日韩美女啊v在线免费观看| 亚洲成a人v欧美综合天堂| 奇米色777欧美一区二区| 国产成人午夜精品影院观看视频| 91国产丝袜在线放| 日韩高清在线播放| 欧美日本视频在线| 国产精品美女久久久久av爽李琼 | 99久久久精品免费观看国产| 欧洲av一区| 91精品国产色综合久久不卡蜜臀| 国产精品人人做人人爽人人添 | 国产精品久久久久久久裸模 | 亚洲精选视频在线| 精东粉嫩av免费一区二区三区| 粉嫩av亚洲一区二区图片| 久久99国产精品99久久| 欧美色电影在线| 国产精品女主播在线观看| 天天综合天天综合色| 国产成人av一区二区三区在线观看| 国产精品中出一区二区三区| 日本高清免费不卡视频| 国产日韩三级在线| 蜜臀va亚洲va欧美va天堂| 波多野结衣一区二区三区在线观看| 中文字幕av日韩精品| 国产区在线观看成人精品| 蜜桃久久av一区| 黄色99视频| 欧美一区二区成人6969| 亚洲综合免费观看高清在线观看| 国产成人免费视频网站| 日韩影院一区| 久久亚洲精精品中文字幕早川悠里 | 欧美精品一二三区| 一区二区三区资源| 国产成人精品一区二区三区四区| 欧美日韩一区二区视频在线| 精品国产sm最大网站免费看| 人人狠狠综合久久亚洲| 国产在线一区二区三区四区 | 亚洲一区欧美一区| 96av麻豆蜜桃一区二区| 欧美三级三级三级| 亚洲精品成人在线| 91免费版在线看| 欧美日韩大陆在线| 亚洲成人动漫在线免费观看| 91小视频免费观看| 欧美一区二区三区日韩| 视频一区在线播放| 久久一区免费| 欧美国产丝袜视频| 播五月开心婷婷综合| 欧美影视一区二区三区| 亚洲国产欧美日韩另类综合| 国产成人亚洲欧美| 欧美大片国产精品| 国产一区二区三区在线看麻豆| 神马影院我不卡午夜| 亚洲色图视频网站| 国产精品theporn88| 精品日韩欧美一区二区| 国产麻豆日韩欧美久久| 亚洲一区二区三区免费观看| 1区2区3区欧美| 91丨九色丨蝌蚪富婆spa| 日韩午夜在线观看视频| 韩国毛片一区二区三区| 在线视频国内自拍亚洲视频| 亚洲最新视频在线播放| 欧美一区二区三区在线播放| 亚洲欧美中日韩| 精品无码久久久久国产| 国产精品日产欧美久久久久| 91网站最新地址| 精品国产凹凸成av人网站| 国产成人亚洲综合色影视| 欧美日韩高清一区二区| 久久69国产一区二区蜜臀| 欧美亚洲精品一区| 久久国产精品99久久久久久老狼| 一区二区三区四区国产| 午夜视频在线观看一区二区| 亚洲国产欧美日韩| 午夜精彩视频在线观看不卡| 亚洲精品高清视频| 日韩精品国产精品| 欧美最猛黑人xxxxx猛交| 日本va欧美va欧美va精品| 欧美性受xxxx黑人xyx性爽| 经典一区二区三区| 日韩久久久久久| 99九九视频| 亚洲精品伦理在线| 亚洲精品中字| 久久精品国产77777蜜臀| 欧美人与禽zozo性伦| 成人福利视频网站| 亚洲国产精华液网站w| 久久精品国产精品青草色艺| 亚洲午夜久久久久久久久电影网| 国内精品视频一区二区三区八戒 | 国产欧美日韩另类一区| 蜜桃传媒视频第一区入口在线看| 一区二区三区中文免费| 亚洲一区精品视频| 麻豆国产精品一区二区三区| 91精品国产综合久久精品麻豆 | 欧美在线观看禁18| 国产精品一区二区三区99| 26uuu亚洲综合色欧美| 精品乱子伦一区二区三区| 亚洲成av人片在www色猫咪| 欧美日韩成人高清| 日韩高清不卡一区二区三区| 91精品国产91久久久久久最新毛片| 成人免费观看视频| 综合欧美亚洲日本| 色综合久久久久综合体桃花网| 久久99蜜桃精品| 久久久久久久久久久电影| 欧美一区二区三区四区在线观看地址 | 国产成人h网站| 欧美日韩一区二区三区在线看 | 麻豆精品视频在线观看视频| 精品日韩一区二区三区| 免费看成人午夜电影| 美女国产一区二区三区| 欧美精品一区二区三区在线播放| 国产毛片一区二区| 一区二区三区在线视频免费 | 亚洲电影你懂得| 91麻豆精品国产91| 国产欧美一区二区在线播放| 丝袜美腿亚洲色图| 久久日韩精品一区二区五区| 亚洲国产精品一区二区第一页| 一区二区三区四区高清精品免费观看 | 91久久一区二区| av成人午夜| 久久成人久久爱| 亚洲欧洲av另类| 欧美高清dvd| 日韩精品资源| 成年人国产精品| 日韩激情一二三区| 国产精品视频一二三| 欧美日韩国产另类不卡| 久久综合久久综合这里只有精品| 国产曰批免费观看久久久| 一区二区三区在线视频观看| 精品99999| 欧美日韩亚洲综合在线 | 天天色综合成人网| 国产蜜臀av在线一区二区三区| 色嗨嗨av一区二区三区| 精品乱码一区二区三区| 成人丝袜18视频在线观看| 午夜伊人狠狠久久| 国产精品入口麻豆原神| 欧美一级片免费看| 成人免费观看网站| 夫妻av一区二区| 久久精品国产亚洲aⅴ | 国产精品亚洲视频| 婷婷一区二区三区| 亚洲激情综合网| 国产欧美日韩综合| 日韩女优av电影在线观看| 欧美在线观看视频在线| 日韩精品欧美在线| 国产乱人伦精品一区二区| eeuss鲁片一区二区三区| 中文字幕在线一区免费| 日韩美女主播在线视频一区二区三区| 色天天综合色天天久久| 欧美日韩一区二区三区免费| 国产激情一区二区三区在线观看| 国产电影一区在线| 亚洲欧洲99久久| 中文字幕成人在线观看| 亚洲精品一区二区三区四区高清| 懂色av一区二区三区在线播放| 夜夜精品浪潮av一区二区三区| 国产日韩欧美一区二区三区乱码 | 久久精品国产精品亚洲红杏 | www.一区二区| 顶级嫩模精品视频在线看|