SONY CLIE Organizerのメモ帳に関する覚書き。

メモの記録方法

メモの内容の4KBまではMemoDB(標準メモ帳のDB)に記録され、4KB以降の部分がMemoExDB(CLIE Organizerメモ帳のDB)に記録される。

  • メモが4KB以下でも、MemoExDBのレコードは作成される。(MemoDBとMemoExDBのレコード数は同じ)
  • MemoExDBのレコードには、作成日時と更新日時が記録される。
  • MemoExDBのレコードのAttributeはMemoDBと同じ。

データベース


NameMemoExDB
TypeDATA
CreatorSaMm

データベースの構造

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

ヘッダー

Palm標準のメモ帳データベース(MemoDB)と同じ。

レコード

構造

// 作成・更新日時記録用データ構造
typedef struct
{
	Int16 second;		// 秒
	Int16 minute;		// 分
	Int16 hour;		// 時
	Int16 day;		// 日
	Int16 month;		// 月
	Int16 year;		// 年
} HeadDateTimeType;

// レコード構造
typedef struct
{
	HeadDateTimeType	create;	// レコード作成日時
	UInt16		unknown1;	// ?
	HeadDateTimeType	mod;	// レコード更新日時
	UInt16		unknown2;	// ?
	UInt16		unknown3;	// ?
	Char		note;	// メモの内容(null terminated)
	UInt8		reserved;
} MemoExDBRecordType;

unknown1~3は不明であるが、以下のようになっていると思われる。

  • unknown1, unknown2
    • 0x0003 で固定?
  • unknown3
    • 0x0000 : メモデータが4KB以下
    • 0x8000 : メモデータが4KB以上(MemoExDBにメモの後半が記録されている)

note にはメモの4KB以降の内容が記録される。

  • サイズは記録される文字数 + 2。
  • 最後の2Byteは 0。