ECELIB 0.4
Easy windows CE LIBrary by I.N. 2007/6/22

1.はじめに
 PocketPC (Windows Mobile 2003SE/2005)で文字表示やグラフィックス描画をする
環境を簡単に用意してくれるライブラリです.
 PocketPCのプログラミングにおいて,とりあえず printf("Hello, world\n"); みたいなことが
簡単にできたらいいなという人向けです.
 現在も開発中です.ちゃんとした説明書もまだです.将来,仕様が変更されるかもしれません.
 開発および動作確認は Visual C++ 2005,開発キット,HP hx4700(Windows Mobile 2005 UPG) で行いました.

2.特長
 テキスト画面とグラフィックス画面があり独立しています.(NEC PC-9800のような感じ)
 基本的にフルスクリーン仕様です.
 QVGA, VGA のどちらでも動作します.
 エミュレータでも動作します.
 (本体のボタンにも機能が割り当てられています.)
 画面にポップアップメニューが出ます.
 ESPLIBと多少似ていますのでそちらも参考にしてください.

3.使用方法とサンプル

3.1 使用方法
 
必要なソフト
1. Visual Studio 2005 Professional(Standard以上が必要)
2. Windows Mobile 5.0 Pocket PC SDK (英語版のみ)
3. Windows Mobile 5.0 Emulator Images for Pocket PC - JPN
4. Active Sync 4.1(日本語版)

〜Visual Studio 2005の流れ〜
新規プロジェクト作成で
ファイル 新規作成 プロジェクト
スマートデバイス
Win32 スマートデバイス プロジェクト
プロジェクト名:適当
ソリューションのディレクトリを作成(チェック外す)

Pocket PC 2003を左へ
Windows Mobile 5.0 Pocket PC SDKを右へ

Windows アプリケーション(空のプロジェクトにチェック入れるor入れない)

 プログラムの先頭で以下のようにインクルードしてください.
 #include <ecelib.h>

3.2 サンプル
#include <ecelib.h>

void ECE_Ready(void)
{
        ECE_Printf(_T("Hello, world\n"));
}

void ECE_Main(void)
{
        ECE_Circle(120,160,100,0x00ff00);
}

void ECE_Finish(void)
{
}

4.利用できる関数

(引数,戻り値などはソースを見て解析してください)
(機能も想像してください.ESPLIBと類似しています.)
(そのうちまともな関数リファレンスを書くでしょう.)

−−−基本3関数−−−
void ECE_Ready(void);
void ECE_Main(void);
void ECE_Finish(void);

−−−全般−−−
int ECE_STOP;
int ECE_Sleep(int msec);
int ECE_Random(n);
void ECE_GraphOn();
void ECE_GraphOff();
void ECE_TextOn();
void ECE_TextOff();
void ECE_Cls(void);

−−−色変換−−−
int C2R(c);
int C2G(c);
int C2B(c);
int RGB2C(r,g,b);
void C2RGB(int c, int *R, int *G, int *B);

−−−時間計測−−−
void ECE_ResetClock(void);
void ECE_StartClock(void);
void ECE_StopClock(void);
int ECE_DispClock(void);
int ECE_GetClock(void);

−−−テキスト関数−−−
void ECE_SetColor(int tc,int bc);
void ECE_RestoreColor(void);
void ECE_Locate(int cx,int cy);
int ECE_Printf(TCHAR *format, ...);
void ECE_Input(TCHAR *buffer);
void ECE_About(void);
void ECE_ClsT(void);

−−−グラフィックス描画−−−
void ECE_ClsG(void);
void ECE_Update(void);
void ECE_Capture(void);
void ECE_Pset(int x,int y,int c);
void ECE_Line(int x1,int y1,int x2,int y2,int c);
void ECE_LineTo(int x,int y,int c);
void ECE_LineXOR(int x1,int y1,int x2,int y2);
int ECE_Point(int x, int y);
void ECE_Box(int x1,int y1,int x2,int y2,int c);
void ECE_BoxXOR(int x1,int y1,int x2,int y2);
void ECE_BoxFill(int x1,int y1,int x2,int y2,int c1,int c2);
void ECE_BoxFillXOR(int x1,int y1,int x2,int y2);
void ECE_BoxR(int x1,int y1,int x2,int y2,int c,int rx,int ry);
void ECE_BoxFillR(int x1,int y1,int x2,int y2,int c1,int c2,int rx,int ry);
void ECE_Ellipse(int x,int y,int rx,int ry,int c);
void ECE_Circle(int x,int y,int r,int c);
void ECE_CircleXOR(int x,int y,int r);
void ECE_CircleFill(int x,int y,int r,int c1,int c2);
void ECE_CircleFillXOR(int x,int y,int r);
void ECE_Text(TCHAR *s,int x,int y,int c);
void ECE_CopyImage(int x1, int y1, int w, int h, int x2, int y2);
void ECE_LoadImage(TCHAR *filename,int x0,int y0);

ダウンロード

 ecelib.h ファイル ecelib.h がLZH圧縮してあります.


1つ上へ戻る