MOBI の研究は PDB の研究から始まります。
しかし、MOBI と PalmOS の関係はまだわかりません
オリジナルのリンク:https://wiki.mobileread.com/wiki/PDB#Palm_Database_File_Code
PalmOS はすべての RAM ストレージをデータベース形式で保存します。RAM にはファイルシステムがありません。PC に同期すると、これらのデータベースは個別のファイルに保存され、拡張子が追加されます。デバイスの RAM 内のすべてのファイルは、プログラムやデータに関係なく、Palm データベース形式である必要があります。外部ストレージ用に作成された PDB ファイルはデータファイルであり、任意の内容を含むことができます。
テーブルの表示に問題がありますので、画像をご覧ください
オフセットアドレス | バイト数 | 内容 | 注釈 |
---|---|---|---|
0 | 32 | データベース名 | データベース名、0 で終わる。PalmOS ではファイル名として使用されます。電子書籍の場合、通常は書名で、十分な長さがあれば著者名も含まれます |
32 | 2 | プロパティ | ビットフィールド。(重要ではないため、翻訳しません) 0x0002 読み取り専用 0x0004 Dirty AppInfoArea 0x0008 このデータベースをバックアップする(つまり、コンジットが存在しない) 0x0010 (10 進数 16) 既存のコピーが PalmPilot に存在する場合、新しいコピーをインストールしても問題ありません 0x0020 (10 進数 32) このデータベースのインストール後に PalmPilot をリセットします 0x0040 (10 進数 64) ファイルのコピーを他の Pilot にビーム送信できないようにします。 |
34 | 2 | バージョン | |
36 | 4 | 作成日時 | Unix タイムスタンプ |
40 | 4 | 変更日時 | |
44 | 4 | 最終バックアップ日時 | |
48 | 4 | 変更番号 | |
52 | 4 | ソフトウェア情報 ID | ソフトウェア情報のオフセットアドレス(存在する場合)または null |
56 | 4 | カテゴリ ID | カテゴリ情報のオフセットアドレス(存在する場合)または null |
60 | 4 | ファイルタイプ | この表を参照 |
64 | 4 | 作成者(ソフトウェア) | この表を参照 |
68 | 4 | ユニークな ID シード | 内部使用 |
72 | 4 | 次のレコードテーブル ID | PalmOS のメモリ内で使用されます |
76 | 2 | レコード数 | このファイルには N 個のレコードがあります |
78 | 8N | リスト、各レコードの情報 | |
各レコードの情報は以下の通り | N 回繰り返されます | ||
4 | レコードデータのオフセットアドレス | ファイルの先頭からのオフセット | |
1 | レコードのプロパティ | ビットフィールド。最下位 4 ビットはカテゴリ値を表します。これらは画面上でデータベースを表示するために使用されるカテゴリです。いくつかの 16 個のカテゴリが事前に定義されていますが、ユーザーは独自のカテゴリを追加することができます。ユーザーやプログラマーがこれを設定していない場合には、未定義のカテゴリが使用されます。 0x10 (10 進数 16) シークレットレコードビット。 0x20 (10 進数 32) レコードが使用中(ビジービット)。 0x40 (10 進数 64) ダーティレコードビット。 0x80 (128, 符号なし 10 進数) 次回の HotSync でレコードを削除します。 | |
3 | ユニーク ID | 通常は 0 から始まります | |
レコードの情報の終わり | |||
2? | 区切り | 通常は 2 つのゼロバイトです | |
? | レコード | レコードのデータ。。。。。 | |