BIN2HEX [ :address| filename ]*
[ options ]*
バイナリファイルをINTEL_HEX形式のファイルに変換する。
アドレス及び、ファイル名の記述の順序は有意なので注意を要する。
以降、出現するたびに、次に現れるファイルの先頭アドレスを指定する。
アドレスを指定する前にファイル名が現れた場合はそのファイルの開始アドレスは0となる。
ファイル名もアドレスも省略すると標準入力を扱い、その開始アドレスは0である。
最後にアドレスだけを指定すると、それが、領域の最終アドレスとなる。
(実際は領域の次ぎのアドレスで指定する)
現在は、全てのファイルをメモリに読み込んで処理するので、あまり大きなファイルの取扱は具合が悪い。
:hexadrの形式でその開始位置を指定する。
:800 :900 begin.bin :a00 main.bin :c00
:800がバイナリイメージの開始領域を表わし、
最後の:c00がバイナリ領域の終了(領域+1)を表わす。
つまり、内部のバイナリ領域は、0x800-0xbffとなる。begin.binはその中の:900から始まる。
同様にmain.binの開始位置は:a00である。内部イメージを全て出力ファイル部分を出力-V)で指定する。
ファイルで指定した部分だけを出力する。
ファイルの存在しない領域のイメージは出力しない。
指定領域を出力-A)で指定する。
出力領域は、内部のバイナリイメージに入っていること。
-Fで指定できる。-P、-PPオプションで指定する。
前者はおおまかに、後者は細かくパックする。
-Zを指定する。
これで、最初の64kbに対してはアドレス修飾レコードが出なくなる。
-Lを指定する。
これで、アドレスが小さくてもリニア形式で出力する。
-Astart_address,{end_address|+size]-Astart_adr,end_adr-Astart_adr,+size-Cbytecount-Fhexnum-P-fで指定した値を出力に含めないようにする。
大まかにパッキングするだけで最適化はしない。
-PP[num]-L-Ofilename-V-Z1を返す。それ以外では0。
| HEX2BIN | INTEL_HEXファイルからバイナリファイルを作成する |
| Ver 1.00 | 初版 |