• 追加された行はこの色です。
  • 削除された行はこの色です。
&tag(Palm,Program);

PalmOne社のPIMアプリ「Tasks」のデータベースに関して。

*データベース
*データベース [#c435d4ef]
~
|Name|TasksDB-PTod|
|Type|DATA|
|Creator|PTod|

*レコードの構造
*レコードの構造 [#gba15aeb]

(PalmOneから仕様が発表されていないため、分かる範囲でのメモ)

-ヘッダーの構造
 typedef struct {
 	UInt8 	flag;		// 情報
 	UInt16 	unknown1;		// ?
 	UInt8 	completeFlag;	// 完了?
 	UInt8 	unknown2;		// ?
 	UInt8 	priority;		// 優先順位
 } TasksHeaderType;

#geshi(C){{
typedef struct {
	UInt8 	flag;		// 情報
	UInt8 	unknown1;	// ?
	UInt8 	unknown2;	// ?
	UInt8 	completeFlag;	// 完了?
	UInt8 	unknown3;	// ?
	UInt8 	priority;	// 優先順位
 	char	firstField;	// flagにより変わる
} TasksHeaderType;
}}
-flag のビットの意味
--0x40 : 完了
--0x80 : 日付あり
--0x04 : Noteあり
--0x08 : 表題あり
--0x08 : Description(表題)あり

-ヘッダーに続くデータは基本的には次の順番で並ぶ。
 DateType 	dueDate;		// 日付
 Char *		description;	// 一覧に表示される表題
 Char *		note;		// Note
>ただし、flagのビットがたっていないものは省略される。
-firstField以降のデータは基本的には次の順番で並ぶ。
#geshi(C){{
DateType 	dueDate;	// 日付
Char *		description;	// 一覧に表示される表題
Char *		note;		// Note
}}
ただし、flagの上位ビットが0の場合は、dueDateが省略される。