HOME Palm


赤外線通信環境のバックアップ

~ irenhanc をFLASHに焼いてみよう ~

 

 

■ 赤外線通信について

 

PalmIII以降の機種は赤外線ポートを標準装備しています。

この赤外線ポートを使って
赤外線HotSync,赤外線通信が可能です。
つまりケーブルを使わなくてすむ訳です。
これは便利です。

NM207/NM502i携帯電話を使ってモバイル通信もお手軽です。

そのためには,ROMには標準搭載されていない
赤外線通信用のモジュールirenhancが必要です。
つまり後から付け足しでインストールするのです。
(注:OS3.3以降は不要となりました)

ですから,ハードリセットなどでRAMの内容を飛ばしてしまうと
赤外線通信環境を失ってしまうことになります。(※)

(※) 赤外線での名刺交換などには影響ありません。
影響を受けるのは,赤外線HotSync,赤外線通信などです。

 

■ ハードリセットとその対策について

 

私はPalmとNM207(NM502i)を持ってサイクリングに出ます。
Palmは記録をとるのが第一の目的。
NM207(NM502i)は緊急時の電話としてが第一の目的。

そして,うれしいおまけとして
出かけた先でも手軽にメールを読み書きできるのが便利です。
ところが,うっかりハードリセットになると大変。

ハードリセットでirenhancを失うと
せっかくのNM207(NM502i)もただの携帯電話になってしまいます。
ちょっぴり悲しい。

ハードリセット対策としてポピュラーな方法は,FLASHメモリの活用です。
FLASHに置かれたプログラムやデータは
電池切れなどの場合でも内容が失われません。
プログラムやデータをFLASHに置くことを「FLASHに焼く」と表現します。

私のPalmIIIxの拡張スロットには,
TRG社のxtra xtra Proというメモリボードを増設してあります。
このボードはRAMだけでなく4MBのFLASHメモリを搭載していて
ここに標準
ROMのデータを転写してもまだ約2.8MBの空きがあります。
このボードはRAMだけでなく2MBのFLASHメモリを搭載していて
標準ROM 2MBと合わせると全部で4MBのFLASHメモリを持つことになります。
ここから標準ROMのシステムデータを差し引いても
まだ約2.8MBの空きがあります。
この空きエリアに「これは」と思うプログラムやデータを「焼いておく」訳です。

例えば,J-OS日本語環境をFLASHに焼いておけば
万が一ハードリセットがかかっても日本語の読み書きが可能です。
事実上のJ-OS版日本語Palmという訳ですね。
このほかにもお気に入りのプログラムやデータを焼いておきます。
ただし,なんでもFLASHに焼けるという訳ではないのです。
Hackソフトなどシステム動作に密接に関わるものや,
書き換えが必要なデータはFLASHに焼くことはできません。
そういうものをFLASHに焼いてしまうとクラッシュします。
要注意です。

今回のテーマは,赤外線通信環境をFLASHに焼いて
ハードリセットに備えよう(バックアップしよう)という訳です。

 

■ 赤外線通信環境のバックアップ

 

Irenhanc(3com社の赤外線通信用モジュール)には
次の4つのモジュールが含まれています。

名称
サイズ
OS 3.1に含む
Palm上の名称
役割
AMX.prc
(20KB)
AMX

赤外線を使ったNetwork HotSyncに必要らしいです(readmeより)

IrLib.prc
(40KB)
IrDA Library

よくわかりませんがこれは必須のようです

SerIrCommLib.prc
(11KB)
SerIrComm Library

よくわかりませんがこれも必須のようです

SerIrPanel.prc (*)
(3KB)
SyncPanel

(*)Serial/IRの切替パネル(環境設定)



pilot-MLの過去記事[15455のスレッド]によると
AMX.prcIrLib.prcPalmOS 3.1に含まれているそうです。
私のPalmIIIxは標準でPalmOS 3.1です。
そう言えば,この2つを操作しようとするたびに
「消せません」だの「上書きできません」だの
不可解なメッセージが出たのはそのせいだったのか。

実際,

SerIrCommLib.prc
SerIrPanel.prc (*)

この2つだけで,以下の動作が可能でした。

赤外線 HotSync

NM207でNiftyメール受信 (NfPilotを使用)

NM207へのアドレス送信 (NM207からの受信は必要ないので試してません)



さて,SerIrPanel.prc(*)はFLASHに焼いても無事動作しました。
これは環境設定でSerial/IRを切り替えるものです。

ところが,SerIrCommLib.prcFLASHで走らせるとクラッシュします。
そこで,SerIrCommLib.prcは,RAMFLASHの両方に置きます。
こうすることで通常はRAM上のSerIrCommLib.prcが動作するわけです。

つまり

SerIrCommLib.prc

 : RAMFLASHに置く

SerIrPanel.prc (*)

 : FLASHに置く


という訳です。

これでハードリセットでも大丈夫の赤外線通信環境の一丁上がりです。
注意しないといけないのは,
ハードリセット後に忘れずにSerIrCommLib.prc(Palm上ではSerIrComm Library)を
FLASHからRAMにコピーしてから赤外線通信を起動することです。
そうしないと通信を起動した途端にクラッシュします。

この状態でいったんクラッシュすると,
クラッシュ → リセット → クラッシュ ・・・・ を無限に繰り返してしまいます。
そんなときはウォームリセット(上ボタン+リセット)をかけて落ち着かせてやります。
環境を整えたら念のために一度ソフトリセットをかけておきます。

 

[蛇足]

ふつうは以上でいいのですが,
さらに,SerIrPanel.prc(*)なしで,

SerIrCommLib.prc

 : RAMFLASHに置く


だけでも赤外線通信は整います。

ただし,この場合,ハードリセットでSerIrPanel.prc(*)が飛ぶと,
Serial/IRが切り替えられず,赤外線専用機になってしまいます。
これはこれでおもしろい存在です。
が,やっぱりSerial通信にも切り替えたければ,
赤外線 HotSyncでSerIrPanel.prc(*)さえインストールすればあとは大丈夫。

 

実は,当初はirenhancまるごとのバックアップを目論んでいました。
せっかく
DataBag(アーカイブソフト)まで購入して作業にとりかかったのですが,
結局そこまでは必要なかった訳です。トホホ。
私のこの哀れな教訓を活かしていただければ幸いです。
ま,DataBagの活用はおいおい考えていきます。

 教訓 : MLの過去記事にはよく目を通すべし。きっとヒントが隠されているゾ。

 

 

■ お断り そしてWorkPadの赤外線環境について

 

ここまでの内容はあくまでPalmIIIx(OS3.1)に基づいています。
また,ここで紹介した方法でシステムに障害が生じても保障いたしませんからね。
(念のため)

また,WorkPad(およびその日本語版)については若干事情が異なります。
というのも,WorkPadではPalm DeskTopから自動的に
IBM製の赤外線通信モジュールがインストールされるからです。
この辺の事情についてはMuchyさんのレビュー記事などが参考になると思います。

 

ちなみに,その後私はOS3.3にUpgradeしました(英語版の特権ですな^^)。
このOS3.3は赤外線環境を完全に含んでいて,
しかもUpgrade方法はROMを書換える(xtra xtra Proにも対応)という恒久的なものです。
つまり自前でirenhancを焼く必要がない訳です!やった!

ところが,NfPilotはOS3.3の赤外線環境には対応しておらず
私は相変わらず上記の通り

SerIrCommLib.prc

 : RAMFLASHに置く

SerIrPanel.prc (*)

 : FLASHに置く


な状態を続けております。あららら。

システムが進歩してもこのようにアプリが対応しない場合は仕方がないですね^^;
もっとも私の方もNiftyメールに直接アクセスすることは滅多になくなりましたけどね。
別のアドレスに転送してそれをPOPJで読んでます。
でもNfPilotもirenhancもまだ捨てられずにいます^^;




[2000.10.14]

また状況が変わりました。
Niftyのサービス状況もずいぶん変わってきて
いつの間にやら他のプロバイダ経由でも
POP/SMTPアクセスできるようになってました。
そこで
POPJでniftyのPOPサーバにもアクセスできるようにしました。
これでNfPilotの必要性も薄れてきました。
事実最近はまったく使わなくなってました。
この機会にFLASHから(Palmから)削除しました。
長い間ごくろうさまでした!
このPalmwareが私のPalmモバイル通信の第一歩でしたから。

しかし単純に消し去るわけにはいかないのだ。
POPJがハードリセット後も無事通信できるように整備しておかなくては。
まずPOPJ関連のデータベースをDataBagを使ってアーカイブ
このアーカイブ(DataBag1)をFLASHに焼いておきます。
DataBag自身もFLASHに焼いてあるので
いつでもアーカイブ(DataBag1)からレストアできます。

今日のまとめ

消去したもの

FLASHに焼き直したもの

NfPilot.prc
NfHdrDB.pdb
 (NfPilot用のデータ)
SerIrCommLib.prc (irenhanc)
SerIrPanel.prc
 (irenhanc

POPJ.prc
DataBag.prc
 (アーカイブツール)
DataBag1.pdb
 (POPJ用データのアーカイブ)

(アーカイブの中身)
PopjKeepDB.PDB
PopjListDB.PDB
PopjMdDB.PDB
PopjRemoteDB#1.PDB
PopjRemoteDB#2.PDB
PopjRemoteDB#3.PDB
PopjRemoteDB#4.PDB
PopjRemoteDB#5.PDB
PopjRemoteDB#6.PDB
PopjRemoteDB#7.PDB
PopjRemoteDB#8.PDB
PopjRemoteFilterDB.PDB
PopjRetrFilterDB.PDB
PopjSendFilterDB.PDB
PopjTempDB.PDB


これまでNfPilotを稼動させるためだけにirenhanc環境を残していました。
NfPilotが要らなくなったので,これももう不要です。
これでirenhanc環境は私のPalm上から姿を消しました。
純粋にOS3.3だけで赤外線機能が動いていることになります。

というわけでこのコーナーもこれにて打ち止め(かな?)

 

このページのTOPへ



HOME Palm