• ベストアンサー

XMODEMのchecksumの計算方法を教えてください。

Teratermを使用してある機器にバイナリファイルを 転送しようとしています。 そのターゲット側のプログラム方法で悩んでいます。 ネットで調べてみたのですが128バイト毎に転送して ターゲットがACK,NAKを応答すると次のパケットを送るか 再送するか判定するまでしか調べられませんでした。 別の(他社)機器で転送したときにアナライザーで見ると 以下のように表示されています。 byte         1  2  3  4・・・ 130 131 132 host         01 01 FE 44・・・ AB  86 44 target NAK NAK                      ACK 1,2は連番なのかなと思いますが3byte目の[FE]と 132byte目の[44]が分かりません。 ちなみに4byte目[44]~131byte目[86]まではファイルの データ128バイトです。 ここで本題なのですが、 1.転送データのどの部分が何を示しているのか(1-3byte目と132byte目) 2.checksumの計算方法 をご教授願えないでしょうか。 稚拙な文章で理解しにくいと思いますのでお答えいただけそうで 追加説明が必要でしたら申し付けください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

Ward Christensen氏(XMODEMプロトコル開発者)によるオリジナルのXMODEMプロトコル仕様はこのようになっています: http://www.totse.com/en/technology/telecommunications/xmodem.html

numeneko
質問者

お礼

なるほど、英語のサイトなら見つかったんですね。ありがとうございます。翻訳できて理解できたら再度お礼のポイントを発行いたしますね。

その他の回答 (1)

  • terra5
  • ベストアンサー率34% (574/1662)
回答No.1

http://www.wdic.org/?word=XMODEM+%3AWDIC ここの説明でだいたいわかるだろうと思いますが。 あとはXMODEMを実装したソースがあるので参考にすればいいかと。 lrzszとしてlinux,FreeBSDに含まれているようです。

参考URL:
http://www.wdic.org/?word=XMODEM+%3AWDIC
numeneko
質問者

お礼

ウチの会社が悪いのでしょうか。何度挑戦してもリンクが切れているのか、重いのかで繋がらないです。

関連するQ&A