(57)【特許請求の範囲】
【請求項１】
少なくとも画像と上記画像のサムネイル画像とを有する画像ファイルを保持する他装置内から、通信手段を介して上記画像ファイルに含まれる情報を取り込む通信装置であって、上記他装置から、上記画像ファイルを格納する記憶領域における上記画像ファイルのアドレス情報と、上記画像ファイルにおける上記情報のアドレス情報とを取得し、取得した上記画像ファイルのアドレス情報及び上記情報のアドレス情報に基づき、上記他装置から取り込む情報の記憶領域を直接指定して取り込み処理を行なう情報取込手段を備えることを特徴とする通信装置。
【請求項２】
上記情報取込手段は、上記情報のアドレス情報として上記サムネイル画像のアドレス情報を取得し、上記画像ファイルのアドレス情報及び上記サムネイル画像のアドレス情報を用いて上記サムネイル画像を取り込むことを特徴とする請求項１記載の通信装置。
【請求項３】
上記情報取込手段により取り込まれた複数の情報を任意の順序で配列して一括出力する出力手段を備えることを特徴とする請求項１記載の通信装置。
【請求項４】
上記出力手段は、少なくとも印刷出力機能を有することを特徴とする請求項３記載の通信装置。
【請求項５】
上記他装置は、ディジタルカメラであることを特徴とする請求項１記載の通信装置。
【請求項６】
他装置内に保持されている画像を取り込み、取り込んだ上記画像を出力するための画像処理を行なう画像処理装置であって、請求項１〜５の何れか１項に記載の通信装置の機能を有することを特徴とする画像処理装置。
【請求項７】
少なくとも画像と上記画像のサムネイル画像とを有する画像ファイルを保持する他装置内から、通信手段を介して上記画像ファイルに含まれる情報を取り込む通信方法であって、上記他装置から、上記画像ファイルを格納する記憶領域における上記画像ファイルのアドレス情報と、上記画像ファイルにおける上記情報のアドレス情報とを取得し、取得した上記画像ファイルのアドレス情報及び上記情報のアドレス情報に基づき、上記他装置から取り込む情報の記憶領域を直接指定して取り込み処理を行なう情報取込工程を備えることを特徴とする通信方法。
【請求項８】
上記情報取込工程は、上記情報のアドレス情報として上記サムネイル画像のアドレス情報を取得し、上記画像ファイルのアドレス情報及び上記サムネイル画像のアドレス情報を用いて上記サムネイル画像を取り込むことを特徴とする請求項７記載の通信方法。
【請求項９】
上記情報取込工程により取り込まれた複数の情報を任意の順序で配列して一括出力する出力工程を備えることを特徴とする請求項７記載の通信方法。
【請求項１０】
上記出力工程は、少なくとも印刷出力することを特徴とする請求項９記載の通信方法。
【請求項１１】
上記他装置は、ディジタルカメラであることを特徴とする請求項７記載の通信方法。
【請求項１２】
他装置内に保持されている画像を取り込み、取り込んだ上記画像を出力するための画像処理を行なう画像処理方法であって、請求項７〜１１の何れか１項に記載の通信方法の工程を有することを特徴とする画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、ＩＥＥＥ１３９４で規定されるようなシリアルインターフェイスを介して、一対一のデバイス間でデータ転送を行うために用いて好適なものに関するものである。
【０００２】
【従来の技術】
従来より例えば、ディジタルカメラ（以下、単に「デジカメ」と言う）で撮影して得た撮影画像をプリンタで印刷する方法として、パーソナルコンピュータ（以下、単にパソコン」と言う）を利用した方法がある。
この方法では、先ず、パソコンとデジカメをシリアルインターフェイス（ＲＳ−２３２Ｃ等）で接続すると共に、パソコンとプリンタをパラレルインターフェイス（セントロニクス等）で接続する。次に、デジカメからパソコンへ撮影画像を転送することで、パソコン内へ当該撮影画像を取り込む。そして、パソコンにおいて、当該パソコン上で起動する任意のアプリケーションソフトにより、デジカメから取り込んだ撮影画像を、所望する印刷形式に合わせて加工する。その後、パソコンからプリンタへ上記加工後の撮影画像を転送することで、プリンタでの当該撮影画像の印刷出力を行う。
【０００３】
しかしながら、上述したようなパソコンを利用した撮影画像の出力方法は、既にユーザがパソコンを持っていることが前提である。このため、パソコンを持っていないユーザ（パソコンは持っていないがデジカメを初めて購入したユーザ等）は、パソコンを用意しなければ（新規購入等）、デジカメで撮影して得た撮影画像をプリンタで印刷することはできない。
【０００４】
そこで、デジカメで撮影して得た撮影画像をパソコンを利用せずに直接プリンタで印刷できる、昇華型のビデオプリンタという形態のシステム（以下、「ダイレクトプリントシステム」と言う）が提案されている。
このダイレクトプリントシステムでは、パソコンを介さずに独自規格のシリアルインターフェイスを用いて、直接デジカメとプリンタを接続する、或いは標準規格である赤外線を用いたＩｒＴｒａｎ−Ｐや、コンパクトフラッシュ・スマートメディア等のメモリカードのインターフェイスを用いて、デジカメからプリンタへの撮影画像の転送を行うようになされている。
【０００５】
ところで、上述したようなダイレクトプリントシステムでは、ユーザが、デジカメで撮影して得た種々の撮影画像の中から、プリンタで印刷したい撮影画像を選択する場合、ユーザは、プリンタのビデオ出力端子に家庭用テレビを接続することで、種々の撮影画像に対応するサムネイル画像（撮影画像の実際の画像サイズを８０×６０ドット程度に縮小した当該撮影画像の確認用の画像）が配列されたメニュー画面（インデックス画面）を表示させ、当該メニュー画面から所望する撮影画像を選択するようになされている。このように、家庭用テレビにより撮影画像の確認及び選択のためのメニュー画面を表示させることは、プリンタ自体に、当該メニュー画面を表示できるようなディスプレイを設けるようにすると、コストやスペースの面で問題となるためである。
【０００６】
しかしながら、一般に使用されている家庭用テレビは、パソコンに用いられているモニタ等と比較すると、解像度が７２０×４８０ドット程度と粗い。このため、家庭用テレビのメニュー画面上のサムネイル画像では、撮影画像を確認することは困難である。また、メニュー画面で一度に確認できる撮影画像の枚数を増やそうとすると、すなわちメニュー画面上に一度に表示できるサムネイル画像の枚数を増やそうとすると、その分、サムネイル画像のサイズをさらに小さくする必要があり、さらに撮影画像を確認することが困難である。
このため、メニュー画面での一度に確認できる撮影画像の枚数が制限されてしまうことになる。
【０００７】
そこで、メニュー画面を、デジカメに設けられている液晶表示部で表示することが考えられるが、デジカメの液晶表示部の画面サイズは小さく解像度が低いため、したがって、このような構成としても、一度に確認できる撮影画像の枚数が制限されてしまうことになる。
【０００８】
上述のような問題、すなわち一度に確認できる撮影画像の枚数が制限されてしまうという問題は、特に近年では、デジカメが内蔵しているメモリサイズの増加に伴って、デジカメ内に蓄積可能な撮影画像の枚数が増加しており、その分一度に確認できる撮影画像の枚数を増やして、効率よく撮影画像の確認及び選択が行なえることが要求されていることに対して、非常に不都合である。
【０００９】
そこで、撮影画像の確認及び選択のためのメニュー画面を、家庭用テレビ或いはデジカメの液晶表示部に表示するのではなく、撮影画像のサムネイル画像の一覧をプリンタで印刷出力（インデックスプリント）する方法が提供されている。
これにより、ユーザは、デジカメ内に蓄積されている撮影画像の全てを確認することができ、その中から実際に印刷したい撮影画像を選択することができる。
【００１０】
具体的には、まず、デジカメでは、ＥＸＩＦやＣＩＦＦ等の画像ファイルフォーマットに従って、撮影画像が、それに対応したサムネイル画像と共に、画像ファイルとして保持されている。この画像ファイルの中の全てのサムネイル画像のみ取り出して、サムネイル画像の一覧を印刷出力するために、次の第１〜第４の処理が実行される。
第１処理：先ず、デジカメ内に保持されている画像ファイルを全てプリンタに対して転送する。
第２処理：次に、プリンタにおいて、その画像ファイルの中からサムネイル画像のみを抽出する。
第３処理：次に、第２処理にて抽出したサムネイル画像の一覧画像を生成する。
第４処理：そして、第３処理にて生成した一覧画像を印刷出力する。
【００１１】
【発明が解決しようとする課題】
しかしながら、デジカメ内に保持されている撮影画像の確認及び選択のために、上述したような第１〜４処理により、デジカメ内に保持されている全ての撮影画像を、それらに対応したサムネイル画像の一覧としてプリンタで印刷出力（インデックスプリント）する方法では、デジカメとプリンタの間で行われるデータ転送や、プリンタで行われる画像処理（サムネイル画像の一覧画像の生成処理等）及び印刷処理の負荷が大きく、多大な時間が費やされてしまう、という問題があった。
【００１２】
そこで、本発明は、上記の欠点を除去するために成されたもので、第１のデバイス内に存在する情報を容易に且つ効率的に確認することができ、その情報の中から所望する情報を容易に且つ効率的に選択することができるようにすることを目的とする。
【００１３】
【課題を解決するための手段】
斯かる目的下において、本発明は、少なくとも画像と上記画像のサムネイル画像とを有する画像ファイルを保持する他装置内から、通信手段を介して上記画像ファイルに含まれる情報を取り込む通信装置であって、上記他装置から、上記画像ファイルを格納する記憶領域における上記画像ファイルのアドレス情報と、上記画像ファイルにおける上記情報のアドレス情報とを取得し、取得した上記画像ファイルのアドレス情報及び上記情報のアドレス情報に基づき、上記他装置から取り込む情報の記憶領域を直接指定して取り込み処理を行なう情報取込手段を備えることを特徴とする。
【００３３】
【発明の実施の形態】
以下、本発明の実施の形態について図面を用いて説明する。
【００３４】
本発明は、例えば、図１に示すような通信システム１００に適用される。
この通信システム１００は、ディジタルカメラ１０１内に保持されている撮影画像を、パーソナルコンピュータ（ＰＣ）等を利用することなく、プリンタ１０２から印刷出力できるようになされたダイレクトプリントシステムであり、上記図１に示すように、画像入力デバイス（第１のデバイス）としてのディジタルカメラ（デジカメ）１０１と、画像出力デバイス（第２のデバイス）としてのプリンタ１０２とが、通信手段としての後述する１３９４シリアルバス１０３を介して通信可能に接続された構成としている。
【００３５】
ここで、ダイレクトプリントシステムでの通信手段（インターフェース）としては、１３９４シリアルバスに限らず、その他種々のインターフェースが適用可能であるが、本実施の形態では、その一例として、１３９４シリアルバス１０３を使用しているため、まず最初に、１３９４シリアルバス１０３を規定している”ＩＥＥＥ１３９４”の概要を説明し、これに続いて、本実施の形態での通信システム１００の構成の詳細及び動作を説明する。
【００３６】
《ＩＥＥＥ１３９４の技術の概要》
近年では、家庭用ディジタルＶＴＲやＤＶＤの登場に伴って、ビデオデータやオーディオデータの転送のように、リアルタイムで且つ高情報量のデータ転送のサポートが要求されている。このため、ビデオデータやオーディオデータ等をリアルタイムで転送し、パーソナルコンピュータ（ＰＣ）内に取り込んだり、或いはその他のディジタルル機器に転送するには、必要な転送機能を備えた高速なデータ転送が可能なインタフェースが必要になってくる。このような観点から開発されたインタフェースが、ＩＥＥＥ１３９４−１９９５（Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｓｅｒｉａｌ  Ｂｕｓ）（以下、「１３９４シリアルバス」と言う）である。
【００３７】
図２は、１３９４シリアルバスを用いて構成されるネットワークシステムの一例を示したものである。
このネットワークシステムは、ディジタル機器（以下、単に「機器」と言う）Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈを備えており、Ａ−Ｂ間、Ａ−Ｃ間、Ｂ−Ｄ間、Ｄ−Ｅ間、Ｃ−Ｆ間、Ｃ−Ｇ間、及びＣ−Ｈ間をそれぞれ、１３９４シリアルバスのツイスト・ペア・ケーブル（以下、「１３９４シリアルバスケーブル」と言う）で接続した構成としている。
尚、機器Ａ〜Ｈとしては、例えば、ＰＣ、ディジタルＶＴＲ、ＤＶＤ、ディジタルカメラ、ハードディスク、モニタ等が適用可能である。
【００３８】
それぞれの機器Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈ間の接続方式としては、デイジーチェーン方式とノード分岐方式を混在可能とした方式が用いられ、自由度の高い接続が可能となっている。また、それぞれの機器Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈは、固有のＩＤを有し、当該ＩＤを互いに認識し合うことによって、１３９４シリアルバスケーブルで接続された機器の範囲において、１つのネットワークを構成している。すなわち、機器Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈ間をそれぞれ１本の１３９４シリアルバスケーブルで順次接続するだけで、それぞれの機器Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈが中継の役割を行い、全体として１つのネットワークを構成する。
【００３９】
また、１３９４シリアルバスは、１３９４シリアルバスケーブルを機器に接続した時点で、当該機器が、自動的に自機器の認識や接続状況等を認識するＰｌｕｇ＆Ｐｌａｙ機能を有する。
このＰｌｕｇ＆Ｐｌａｙ機能により、例えば、上記図２のネットワークシステムにおいて、任意の機器Ｘが削除されたり、或いは新たに追加されたときには、自動的にバスリセットが行なわれることで、それまでのネットワーク構成がリセットされ、新たなネットワークの再構築が行なわれることになる。また、その時々のネットワークの構成が常時設定され認識される。
【００４０】
１３９４シリアルバスでのデータ転送速度は、１００／２００／４００Ｍｂｐｓであり、上位の転送速度を有する機器が、下位の転送速度を有する機器をサポートすることで、互換をとるようになっている。
【００４１】
１３９４シリアルバスでのデータ転送モードとしては、コントロール信号等の非同期データ（Ａｓｙｎｃｈｒｏｎｏｕｓデータ、以下、単に「Ａｓｙｎｃデータ」と言う）を転送するＡｓｙｎｃｈｒｏｎｏｕｓ転送モードと、リアルタイムなビデオデータやオーディオデータ等の同期データ（Ｉｓｏｃｈｒｏｎｏｕｓデータ、以下、単に「Ｉｓｏデータ」と言う）を転送するＩｓｏｃｈｒｏｎｏｕｓ転送モードとがある。
【００４２】
Ａｓｙｎｃデータ及びＩｓｏデータは、各サイクル（通常１サイクル１２５μＳ）の中において、サイクル開始を示すサイクル・スタート・パケット（ＣＳＰ）の転送に続き、Ｉｓｏデータの転送を優先しつつ、サイクル内で混在して転送される。
【００４３】
図３は、１３９４シリアルバスの構成要素を示したものである。
この図３に示すように、１３９４シリアルバスは、１３９４シリアルバスのケーブル２１３から順に、ハードウェア２００、ファームウェア２０１、ソフトウェア２０２へと、全体としてレイヤ（階層）構造で構成されている。
【００４４】
１３９４シリアルバスのケーブル２１３は、最もハード的な構成であり、そのコネクタは、コネクタポート２１０に接続される。
【００４５】
ハードウェア２００は、実施的なインターフェイステップの部分であり、フィジカル・レイヤ２１１及びリンク・レイヤ２１２を含んでいる。フィジカル・レイヤ２１１は、符号化やコネクタ関連の制御等を行い、リンク・レイヤ２１２は、パケット転送やサイクルタイムの制御等を行う。
ファームウェア２０１は、トランザクション・レイヤ２１４及びマネージメント・レイヤ２１５を含んでいる。トランザクション・レイヤ２１４は、転送（トランザクション）すべきデータの管理を行い、”Ｒｅａｄ”や”Ｗｒｉｔｅ”等の命令を発行する。マネージメント・レイヤ２１５は、接続されている各機器の接続状況やＩＤの管理を行い、ネットワークの構成を管理する。
これらのハードウェア２００及びファームウェア２０１までが、実質上の１３９４シリアルバスの構成である。
【００４６】
ソフトウェア２０２は、アプリケーション・レイヤ２１６を含んでいる。アプリケーション・レイヤ２１６は、使用するソフトによって異なり、インタフェース上にどのようにデータをのせるか等を規定する部分であり、例えば、ＡＶ／Ｃプロトコル等のデータ転送プロトコルによって規定されている。
【００４７】
図４は、１３９４シリアルバスにおけるアドレス空間を示したものである。
上記図２に示したような、１３９４シリアルバスに接続された各機器（以下、「ノード」とも言う）には、必ず各機器固有の、６４ビットのアドレスを持たせておく。これにより、各機器は、当該アドレスを自機器内のＲＯＭに設定しておくことで、自機器や、接続相手の機器のノードアドレスを常時認識することができ、通信する機器を指定した通信をも行えるようになされている。
【００４８】
１３９４シリアルバスのアドレッシングは、ＩＥＥＥ１２１２規格に準じた方式が採用される。
この方式では、上記図４に示すように、６４ビットのアドレスにおいて、最初の１０ビット（２２１）がバスの番号（バスＩＤ）の指定用に使用され、それ続く６ビット（２２２）がノードＩＤ番号（ノードＩＤ）の指定用に使用される。また、これ以降の４８ビット（２２３）については、それぞれの機器で使用できるアドレスであるが、２０ビット（２２３ａ）と２８ビット（２２３ｂ）に分けられ、２５６Ｍバイト単位の構造（２２４）を持って利用される。
【００４９】
４８ビット（２２３）の最初の２０ビット（２２３ａ）により示されるアドレスの領域２２４おいて、０〜０ｘＦＦＦＦＤのアドレスにより示される領域２２５は、メモリ空間と呼ばれ、その次の０ｘＦＦＦＦＥのアドレスにより示される領域２２６は、プライベート空間と呼ばれ、各機器で自由に利用できる領域である。また、その次の０ｘＦＦＦＦＦのアドレスにより示される領域２２７は、レジスタ空間と呼ばれ、バスに接続された機器間で共通な情報が設定され、各機器間のコミュニケーションに使用される。
【００５０】
レジスタ空間２２７において、最初の５１２バイトの領域２２８は、ＣＳＲアーキテクチャのコアになるレジスタ（ＣＳＲコア）として使用される。その次の５１２バイトの領域２２９は、シリアルバスのレジスタとして使用される。その次の１０２４バイトの領域２３０は、ＣｏｎｆｉｇｕｒａｔｉｏｎＲＯＭとして使用される。そして、それ以降の領域２３１は、ユニット空間（機器固有のレジスタ）として使用される。
【００５１】
尚、一般的に、異種バスシステムの設計の簡略化のためは、各機器は、ユニット空間２３１の最初の２０４８バイトの領域のみ使用することが望ましい。この場合、ＣＳＲアーキテクチャの核（ＣＳＲコア）２２８、シリアルバスのレジスタ２２９、ＣｏｎｆｉｇｕｒａｔｉｏｎＲＯＭ２３０、及びユニット空間２３１の最初の２０４８バイトの、合計４０９６バイトで構成すればよい。
【００５２】
《１３９４シリアルバスの電気的仕様》
図５は、１３９４シリアルバス・ケーブルの断面図を示したものである。
この図５に示すように、１３９４シリアルバス・ケーブル内には、２組のツイストペア信号線２４１が設けられていると共に、電源ライン（電源線）２４２が設けられている。この電源線２４２によって、電源を持たない機器や、故障により電圧低下した機器等に対しても、電力の供給が可能となる。
電源線２４２内を流れる電源の電圧としては８〜４０Ｖ、電流としては最大電流ＤＣ１．５Ａが規定されている。
【００５３】
《ＤＳ−Ｌｉｎｋ符号化》
１３９４シリアルバスで採用されているデータ転送フォーマットについて、図６を用いて説明する。
１３９４シリアルバスでは、データ転送フォーマットとして、ＤＳ−Ｌｉｎｋ（Ｄａｔａ／Ｓｔｒｏｂｅ  Ｌｉｎｋ）符号化方式を採用している。このＤＳ−Ｌｉｎｋ符号化方式は、高速なシリアルデータ通信に適した方式である。
【００５４】
具体的には、ＤＳ−Ｌｉｎｋ符号化方式では、２本の信号線を必要とし、これらの２本の信号線のうち、１本の信号線で主となるデータ（Ｄａｔａ）を送り、他方の信号線では、ストローブ信号（Ｓｔｒｏｂｅ）を送る構成としている。
したがって、データ（Ｄａｔａ）及びストローブ信号（Ｓｔｒｏｂｅ）の受信側では、データ（Ｄａｔａ）とストローブ信号（Ｓｔｒｏｂｅ）の排他的論理和をとることによって、クロック（Ｃｌｏｃｋ）を再現できる。
【００５５】
上述のようなＤＳ−Ｌｉｎｋ符号化方式を採用することで、次のようなメリットがある。
・他のシリアルデータ転送方式に比べて転送効率が高い。
・ＰＬＬ回路が不要となるため、コントローラＬＳＩの回路規模を小さくできる。
・転送すべきデータが無い場合等にアイドル状態であることを示す情報を送る必要が無いため、各機器のトランシーバ回路をスリープ状態にすることができる。これにより、消費電力の低減が図れる。
【００５６】
《ノードＩＤ決定のシーケンス》
上述したように、Ｐｌｕｇ＆Ｐｌａｙ機能によって、任意の機器が削除されたり、或いは新たに追加されたときには、自動的にバスリセットが行なわれることで、それまでのネットワーク構成がリセットされ、新たなネットワークの再構築が行なわれることになる。
そこで、バスリセットの後、新たなネットワーク構成を構築するために、それぞれの機器では、例えば、図７に示すフローチャートに従った動作（各機器に対してＩＤを与える動作）が実行される。
【００５７】
具体的には、上記図７は、バスリセットが発生してから、それぞれの機器にてノードＩＤが決定され当該ノードＩＤが転送されるまでの動作を示したものである。
【００５８】
先ず、それぞれの機器では、ネットワーク内にバスリセットが発生したか否かが常時監視されている（ステップＳ２５１）。そこで、ネットワーク内の任意の機器の電源ＯＮ／ＯＦＦ等により、バスリセットが発生すると、それぞれの機器は、ネットワークがリセットされた状態から、新たなネットワークの接続状況を認識するために、自機器に直接接続されている機器との間で親子関係を宣言する（ステップＳ２５２）。
【００５９】
ステップＳ２５２により、全ての機器間で親子関係が決定すると（ステップＳ２５３）、この結果、ルートとしての機器が決定することになる（ステップＳ２５４）。
【００６０】
ステップＳ２５４により、ルートとしての機器が決定すると、それぞれの機器は、他機器に対して自機器のノードＩＤを与えるノードＩＤの設定作業を実行する（ステップＳ２５５）。このとき、所定の機器順で、ノードＩＤの設定作業を実行する。
【００６１】
ステップＳ２５５により、全ての機器に対してのノードＩＤの設定作業が終了すると（ステップＳ２５６）、新たなネットワーク構成が全ての機器において認識されたことになる。
これにより、それぞれの機器は、他の機器とのデータ転送が行える状態となり、必要に応じて、データ転送を開始する（ステップＳ２５７）。
その後、それぞれの機器は、再びバスリセットが発生したか否かを監視するモード状態となり（ステップＳ２５１）、バスリセットが発生すると、上述したようなステップＳ２５２〜ステップＳ２５７の処理を繰り返し実行する。
【００６２】
《ダイレクトプリントプロトコル（ＤＰＰ）》
上記図１に示した本実施の形態における通信システム１００は、プリンタ１０２とデジカメ１０１の間でのデータ転送手順として、ダイレクトプリントプロトコル（ＤＰＰ）を採用している。
【００６３】
ダイレクトプリントプロトコル（ＤＰＰ）は、図８に示すように、ＩＥＥＥ１３９４の初期ユニット空間（上記図４に示したユニット空間２３１）内にコマンド書き込みのためのコマンドレジスタ（ｃｏｍｍａｎｄ）２６１、コマンドに対する返答を書き込むためのレスポンスレジスタ（ｒｅｓｐｏｎｓｅ）２６２、転送データを書き込むためのデータレジスタ（ｄａｔａ）２６３、及び転送データ個別のデータフォーマットに対応したフォーマット情報を扱うためのフォーマットレジスタ（ｆｏｒｍａｔ）２５４を使用するようになされている。
尚、上記図８では、アドレスの記述を、上位の”ＦＦＦＦ”を省略している。
【００６４】
コマンドレジスタ２６１は、”ＦＦＦＦ  Ｆ０００  ０Ｂ００”ｈの固定アドレスに配置され、５１２バイトの空間を有する。
【００６５】
本実施の形態では、コマンドレジスタ２６１は、デジカメ１０１（画像供給デバイス：ｉｍａｇｅ  ｓｏｕｒｃｅ  ｄｅｖｉｃｅ）が、プリンタ１０２（ｐｒｉｎｔｅｒ）に対して各種コマンド（以下、「コマンドフレーム」とも言う）を書き込むためのレジスタとして使用され、プリンタ１０２側に設けらる。
また、コマンドレジスタ２６１は、デジカメ１０１側にも設けられ、プリンタ１０２が、デジカメ１０１側のコマンドレジスタ２６１に対して各種コマンドを書き込むためのレジスタとして使用される。
【００６６】
レスポンスレジスタ２６２は、”ＦＦＦＦ  Ｆ０００  ０Ｄ００”ｈの固定アドレスに配置され、５１２バイトの空間を有する。
【００６７】
本実施の形態では、レスポンスレジスタ２６２は、プリンタ１０２が、デジカメ１０１からコマンドレジスタ２６１に対して書き込まれた各種コマンドに対する返答（レスポンス、以下、「レスポンスフレーム」とも言う）を書き込むためのレジスタとして使用され、デジカメ１０２側に設けられる。
また、レスポンスレジスタ２６２は、プリンタ１０２側にも設けられ、デジカメ１０１が、プリンタ１０２側のレスポンスレジスタ２６２に対してレスポンスを書き込むためのレジスタとして使用される。
【００６８】
データレジスタ２６３は、”ＦＦＦＦ  Ｆ０００  ３０００”ｈをディフォルトアドレスとしており、データレジスタ２６３のアドレスを定義するコマンド（Ｂｌｏｃｋ  Ａｄｄｒｅｓｓ  Ｂｕｆｆｅｒ  Ｃｏｎｆｉｇコマンド）により、有効な任意のアドレスに設定できるようになされている。
また、データレジスタ２６３の空間は、データレジスタ２６３の空間を定義するコマンド（Ｂｌｏｃｋ  Ｓｉｚｅ  Ｂｕｆｆｅｒ  Ｃｏｎｆｉｇコマンド）により、予め決められた範囲で設定することができるようになされている。
【００６９】
本実施の形態では、データレジスタ２６３は、デジカメ１０１とプリンタ１０２の間でデータの転送を行うためのレジスタとして使用され、プリンタ１０２にて印刷出力を行う場合には、デジカメ１０１により、プリンタ１０２にて印字出力する印字データ（ｐｒｉｎｔ  ｄａｔａ、以下、「データフレーム」とも言う）が書き込まれる。
このときの印字データは、予め設定されたイメージフォーマットに従ったデータ形式で構成される。
【００７０】
フォーマットレジスタ２６４は、後述する各データフォーマットに対応したレジスタ群から構成され、当該レジスタ群の各レジスタは、各データフォーマットに必要なフォーマット情報（以下、「フォーマットフレーム」とも言う）を設定するためのレジスタとして使用される。
【００７１】
本実施の形態では、フォーマットレジスタ２６４は、デジカメ１０１が、プリンタ１０２に対するフォーマット情報を書き込むためのレジスタとして使用される。
【００７２】
図９は、デジカメ１０１とプリンタ１０２の間での、上述したような、コマンドフレーム、レスポンスフレーム、データフレーム、及びフォーマットフレームの流れを示したものである。
【００７３】
例えば、デジカメ１０１内のデータを、プリンタ１０２にて印字出力する場合、上記図９に示すように、先ず、デジカメ１０１は、プリンタ１０２に対するコマンドをコマンドフレームとして、プリンタ１０２側のコマンドレジスタ２６１ｂへ書き込む。
【００７４】
次に、プリンタ１０２は、デジカメ１０１からコマンドレジスタ２６１ｂへ書き込まれたコマンドフレームに対する応答をレスポンスフレームとして、デジカメ１０１のレスポンスレジスタ２６２ａへ書き込む。
このときのレスポンスフレームは、プリンタ１０２が、デジカメ１０１からプリンタ１０２側のコマンドレジスタ２６１ｂへ書き込まれたコマンドフレームに対する動作を、正しく実行したか否か、或いは当該コマンドが必要とする戻り値等を含む情報である。
【００７５】
そして、デジカメ１０１は、プリンタ１０２にて印字出力するデータ（撮影画像等のデータ）をデータフレームとして、プリンタ１０２側のデータレジスタ２６３ｂへ書き込む。
また、デジカメ１０１は、プリンタ１０２での印字出力のフォーマット情報をフォーマットフレームとして、プリンタ１０２側のフォーマットレジスタ２６４へ書き込む。
【００７６】
ここで、上述したようなコマンドフレーム、及びそれに対するレスポンスフレームと、データフレームとしては、図１０に示すようなコマンド及びレスポンス２７１〜２９１と、コマンド２９２〜２９４とが挙げられる。
【００７７】
例えば、上記図１０に示すように、コマンドフレーム及びデータフレームの種類（以下、「コマンド分類」と言う）としては、ステイタス関係の”ステイタス”、プリンタ制御のための”コントロール”、データ転送の設定のための”ブロック／バッファ”、チャネル設定を行うための”チャネル”、転送方法に関する”転送”、フォーマット設定に関する”フォーマット”、ログインに関する”ログイン”、及びデータ転送に関する”データ”の８つに大きく分類される。
【００７８】
コマンド分類が”ステイタス”であるコマンドフレーム及びレスポンスフレームとしては、プリンタのステイタスを得るための”ＧｅｔＳｔａｔｕｓ”、その応答”ＧｅｔｓｔａｔｕｓＲｅｓｐｏｎｓｅ”（２７１）が含まれる。
【００７９】
コマンド分類が”コントロール”であるコマンドフレーム及びレスポンスフレームとしては、プリンタのリセットを行うための”ＰｒｉｎｔＲｅｓｅｔ”、その応答”ＰｒｉｎｔＲｅｓｅｔＲｒｓｐｏｎｓｅ”（２７２）と、印字を開始を指示するための”ＰｒｉｎｔＳｔａｒｔ”、その応答”ＰｒｉｎｔＳｔａｒｔＲｅｓｐｏｎｓ”（２７３）と、印字を中止を指示するための”ＰｒｉｎｔＳｔｏｐ”、その応答”ＰｒｉｎｔＳｔｏｐＲｅｓｐｏｎｓｅ”（２７４）と、給紙を指示するための”ＩｎｓｅｒｔＰａｐｅｒ”、その応答”ＩｎｓｅｒｔＰａｐｅｒＲｅｓｐｏｎｓｅ”（２７５）と、排紙を指示するための”ＥｊｅｃｔＰａｐｅｒ”、その応答”ＥｊｅｃｔＰａｐｅｒＲｅｓｐｏｎｓｅ”（２７６）と、イメージデータのコピーを開始するための”ＣｏｐｙＳｔａｒｔ”、その応答”ＣｏｐｙＳｔａｒｔＲｅｓｐｏｎｓｅ”（２７７）と、イメージデータのコピーを終了するための”ＣｏｐｙＥｎｄ”、その応答”ＣｏｐｙＥｎｄＲｅｓｐｏｎｓｅ”（２７８）とが含まれる。
【００８０】
コマンド分類が”ブロック／バッファ”であるコマンドフレーム及びレスポンスフレームとしては、ブロックのサイズを指定するための”ＢｌｏｃｋＳｉｚｅ”、その応答”ＢｌｏｃｋＳｉｚｅＲｅｓｐｏｎｓｅ”（２７９）と、ブロックのアドレスを指定するための”ＢｌｏｃｋＡｄｄｒｅｓｓ”、その応答”ＢｌｏｃｋＡｄｄｒｅｓｓＲｅｓｐｏｎｓｅ”（２８０）と、空きブロックの数を取得するための”ＦｒｅｅＢｌｏｃｋ”及び”ＷｒｉｔｅＢｌｏｃｋｓ”、その応答”ＦｒｅｅＢｌｏｃｋＲｅｓｐｏｎｓｅ”及びＷｒｉｔｅＢｌｏｃｋｓＲｅｓｐｏｎｓｅ”（２８１及び２８２）と、バッファの情報を指定するための”ＢｕｆｆｅｒＣｏｎｆｉｇ”、その応答”ＢｕｆｆｅｒＣｏｎｆｉｇｌｏｃｋＲｅｓｐｏｎｓｅ”（２８３）と、バッファからのデータ取得開始を指定するための”ＳｅｔＢｕｆｆｅｒ”、その応答”ＳｅｔＢｕｆｆｅｒＲｅｓｐｏｎｓｅ（２８４）とを含んでいる。
【００８１】
コマンド分類が”チャネル”であるコマンドフレーム及びレスポンスフレームとしては、チャネルをオープンするための”ＯｐｅｎＣｈａｎｎｅｌ”、その応答”ＯｐｅｎＣｈａｍｅｌＲｅｓｐｏｎｓｅ”（２８５）と、チャネルをクローズするための”ＣｌｏｓｅＣｈａｎｎｅｌ”、その応答”ＣｌｏｓｅＣｈａｎｎｅｌＲｅｓｐｏｎｓｅ”（２８６）とを含んでいる。
【００８２】
コマンド分類が”転送”であるコマンドフレーム及びレスポンスフレームとしては、データ転送方法を指定するための”ＴｒａｎｓｆｅｒＭｅｔｈｏｄ”、その応答”ＴｒａｎｓｆｅｒＭｅｔｈｏｄＲｅｓｐｏｎｓｅ”（２８７）を含んでいる。
【００８３】
コマンド分類が”フォーマット”であるコマンドフレーム及びレスポンスフレームとしては、フォーマットを設定するための”ＳｅｔＦｏｒｍａｔ”、その応答”ＳｅｔＦｏｒｍａｔＲｅｓｐｏｎｓｅ”（２８８）を含んでいる。
【００８４】
コマンド分類が”ログイン”であるコマンドフレーム及びレスポンスフレームとしては、ログインを行うための”Ｌｏｇｉｎ”、その応答”ＬｏｇｉｎＲｅｓｐｏｎｓｅ”（２８９）と、ログアウトを行うための”Ｌｏｇｏｕｔ”、その応答”ＬｏｇｏｕｔＲｅｓｐｏｎｓｅ”（２９０）と、リコネクションを行うための”Ｒｅｃｏｎｎｅｃｔ”、その応答”ＲｅｃｏｎｎｅｃｔＲｅｓｐｏｎｓｅ”（２９１）とを含んでいる。
【００８５】
上述のようなコマンド（”２７１〜２９２”に示すコマンド（ｃｏｍｍａｎｄ））に対応する値が、デジカメ１０１により、上記図９に示したプリンタ１０２のコマンドレジスタ２６１ｂへ書き込まれることで、プリンタ１０２では、当該コマンドに対応した動作が実行される。そして、プリンタ１０２により、当該コマンドに対する応答（当該コマンドに対応する値と同等の値）が、上記図９に示したデジカメ１０１のレスポンスレジスタ２６２ａへ書き込まれることで、デジカメ１０１では、各コマンドの実行結果が認識される。
【００８６】
また、コマンド分類が”データ”であるデータフレームとしては、データを書き込むための”ＷｒｉｔｅＢｌｏｃｋ”及び”ＷｒｉｔｅＢｕｆｆｅｒ”（２９２及び２９３）と、データを読み込むための”ＰｕｌｌＢｕｆｆｅｒ”（２９４）とを含んでいる。
尚、コマンド分類が”データ”であるデータフレームに対しては、その応答はない。
【００８７】
図１１は、上記図９に示したプリンタ１０２側のフォーマットレジスタ２６４を具体的に示したものである。
この図１１に示すように、フォーマットレジスタ２６４は、問い合わせのための読込専用レジスタ（ＩＮＱＵＩＲＹ）３０１と、設定及び情報取得のための読込／書込レジスタ（ＣＯＮＴＲＯＬ／ＳＴＡＴＵＳ）３０２とを含んでいる。
【００８８】
読込専用レジスタ（ＩＮＱＵＩＲＹ）３０１及び読込／書込レジスタ（ＣＯＮＴＲＯＬ／ＳＴＡＴＵＳ）３０２は、同様の構成をしたレジスタグループからなる。
すなわち、読込専用レジスタ（ＩＮＱＵＩＲＹ）３０１は、レジスタ３０３ａ〜３０７ａからなり、読込／書込レジスタ（ＣＯＮＴＲＯＬ／ＳＴＡＴＵＳ）３０２は、レジスタ３０８と、レジスタ３０３ａ〜３０７ａと同様のレジスタ３０３ｂ〜３０７ｂとからなる。
【００８９】
レジスタ３０３ａ，３０４ａ（３０３ｂ，３０４ｂ）は、共通レジスタグループ（ｐｒｉｎｔ  ｃｏｍｍｏｎ  ｒｅｇｉｓｔｅｒ  ｇｒｏｕｐ）であり、レジスタ３０５ａ〜３０７ａ（３０５ｂ〜３０７ｂ）は、プリンタフォーマットレジスタグループ（ｐｒｉｎｔ  ｆｏｒｍａｔ  ｒｅｇｉｓｔｅｒ  ｇｒｏｕｐ）である。
【００９０】
共通レジスタグループ３０３ａ，３０４ａ（３０３ｂ，３０４ｂ）は、全データフォーマットに共通な情報が格納されるレジスタのグループである。
共通レジスタグループ３０３ａ，３０４ａ（３０３ｂ，３０４ｂ）において、レジスタ３０３ａ（３０３ｂ）は、全プリンタに共通なレジスタ（ＧＬＯＢＡＬ）であり、レジスタ３０４ａ（３０３４）は、プリンタ１０２に固有のレジスタ（ＬＯＣＡＬ）である。
【００９１】
プリンタフォーマットレジスタグループ３０５ａ〜３０７ａ（３０５ｂ〜３０７ｂ）は、各データフォーマットに独自の情報が格納されるレジスタのグループである。
プリンタフォーマットレジスタグループ３０５ａ〜３０７ａ（３０５ｂ〜３０７ｂ）は、レジスタ３０５ａ（３０５ｂ）から、レジスタ３０７ａ（３０７ｂ）までの、合計ｎ個のレジスタ（ｆｏｒｍａｔ［１］〜ｆｏｒｍａｔ［ｎ］）からなる。
【００９２】
レジスタ３０５ａ（３０５ｂ）〜レジスタ３０７ａ（３０７ｂ）のそれぞれは、後述するデータフォーマットに対応しており、実装するデータフォーマット毎に、１つのプリンタフォーマットレジスタグループ３０５ａ〜３０７ａ（３０５ｂ〜３０７ｂ）が割り当てられる。
また、レジスタ３０５ａ（３０５ｂ）〜レジスタ３０７ａ（３０７ｂ）のそれぞれのアドレスは、データフォーマットを設定するコマンドのレスポンスとして、デジカメ１０１に与えられる。
【００９３】
図１２は、上記図１１に示した、読込／書込レジスタ（ＣＯＮＴＲＯＬ／ＳＴＡＴＵＳ）３０２のレジスタ３０８を具体的に示したものである。
レジスタ３０８は、各３２ビットの共通ステイタスレジスタ（ｃｏｍｍｏｎ  ｓｔａｔｕｓ  ｒｅｇｉｓｔｅｒ）３１１と、ベンダー固有ステイタスレジスタ（ｖｅｎｄｏｒ  ｓｐｅｃｉｆｉｃ  ｓｔａｔｕｓ  ｒｅｇｉｓｔｅｒ）３１２とからなる。
【００９４】
共通ステイタスレジスタ３１１は、各ベンダーのプリンタに共通なステータスを保持するためのレジスタであり、ベンダー固有ステイタスレジスタ３１２は、各ベンダーに固有に定義されるステータスを保持するためのレジスタである。
そして、共通ステイタスレジスタ３１１の後述するＶフラグにより、ベンダー固有ステイタスレジスタ３１２ヘの拡張が定義される。
【００９５】
上記Ｖフラグ（ｖｅｎｄｏｒ  ｓｔａｔｕｓ  ａｖａｉｌａｂｌｅ  ｆｌａｇ）は、次のような情報（”０”，”１”，”ｅｒｒｏｒ．ｗａｒｎｉｎｇ”等で示す情報）によって、固有ステイタスレジスタ３１２ヘの拡張の定義を示す。
０：ｎｏｔ  ａｖａｉｌａｂｌｅ
１：ａｖａｉｌａｂｌｅ
ｅｒｒｏｒ．ｗａｒｎｉｎｇ：
ｅｒｒｏｒ．ｗａｒｎｉｎｇ  ｓｔａｔｕｓ
（エラー、ワーニング等のステイタス）
ｐａｐｅｒ  ｓｔａｔｅ：ｐａｐｅｒ  ｃｏｎｄｉｔｉｏｎ
（紙に関する状態のステイタス）
ｐｒｉｎｔ  ｓｔａｔｅ：ｐｒｉｎｔｅｒ  ｃｏｎｄｉｔｉｏｎ
（プリンタ１０２に関する状態のステイタス）
【００９６】
図１３は、上記図１１に示した共通レジスタグループ３０３ａ，３０４ａ（３０３ｂ，３０４ｂ）のレジスタ３０３ａ（３０３ｂ）を具体的に示したものである。
レジスタ３０３ａ（３０３ｂ）には、ダイレクトプリントプロトコルを搭載するプリンタ（プリンタ１０２を含む）全てに共通な情報を保持される。すなわち、プリンタの種別による違いのない共通な情報が保持される。
【００９７】
例えば、レジスタ３０３ａ（３０３ｂ）は、上記図１３に示すように、印字媒体の種類を示す情報が保持される領域（ｍｅｄｉａ−ｔｙｐｅ）３２１、紙の大きさを示す情報が保持される領域（ｐａｐｅｒ−ｓｉｚｅ）３２２、ぺ一ジのマージン値を示す情報が保持される領域（ｐａｇｅ−ｍａｒｇｉｎ）３２３、ぺ一ジの長さを示す情報が保持される領域（ｐａｇｅ−ｌｅｎｇｔｈ）３２４、ぺ一ジのオフセットを示す情報が保持される領域（ｐａｇｅ−ｏｆｆｓｅｔ）３２５、プリンタのユニット情報が保持される領域（ｐｒｉｎｔ−ｕｎｉｔ）３２６、プリンタのカラー種類を示す情報が保持される領域（ｃｏｌｏｒ−ｔｙｐｅ）３２７、及びデータのビット順序を示す情報が保持される領域（ｂｉｔ−ｏｒｄｅｒ）３２８を含んでいる。
【００９８】
図１４は、上記図１１に示した共通レジスタグループ３０３ａ，３０４ａ（３０３ｂ，３０４ｂ）のレジスタ３０４ａ（３０４ｂ）を具体的に示したものである。
レジスタ３０４ａ（３０４ｂ）には、ダイレクトプリントプロトコルを搭載するプリンタ（プリンタ１０２を含む）の個別の機種に独自の情報が保持される。すなわち、プリンタの種別により違いのある情報が保持される。
【００９９】
例えば、レジスタ３０４ａ（３０４ｂ）は、上記図１４に示すように、プリンタ独自の印字媒体の種類を示す情報が保持される領域（ｐａｐｅｒ）３３１、カラーマッチングの方法を示す情報が保持される領域（ＣＭＳ）３３２、及びインクジェットプリンタのインク種別を示す情報が保持される領域（ｉｎｋ）３３３を含んでいる。
【０１００】
図１５は、上記図１１に示したプリンタフォーマットレジスタグループ３０５ａ〜３０７ａ（３０５ｂ〜３０７ｂ）のレジスタ３０５ａ（３０５ｂ）を具体的に示したものである。
レジスタ３０５ａ（３０５ｂ）には、例えば、イメージデータフォーマット形式の１つであるＥＸＩＦ（Ｅｘｃｈａｎｇｅａｂｌｅ  ｉｍａｇｅ  ｆｉｌｅ  ｆｏｍａｔ）に対するフォーマット情報が保持される。
【０１０１】
この場合、レジスタ３０５ａ（３０５ｂ）は、上記図１５に示すように、入力のＸ方向の割合の情報が保持される領域（ｉｎＸ−ｒａｔｅ）３４１、入力のＹ方向の割合の情報が保持される領域（ｉｎＹ−ｒａｔｅ）３４２、出力のＸ方向の割合の情報が保持される領域（ｕｔＸ−ｒａｔｅ）３４３、及び出力のＹ方向の割合の情報が保持される領域（ｕｔＹ−ｒａｔｅ）３４４を含んでいる。
【０１０２】
プリンタ１０２は、レジスタ３０５ａ（３０５ｂ）により与えられたＥＸＩＦフォーマットのイメージデータの内容に合わせて、Ｘ及びＹ方向での変倍を行って印字出力することが可能となる。
【０１０３】
図１６は、上記図１１に示したプリンタフォーマットレジスタグループ３０５ａ〜３０７ａ（３０５ｂ〜３０７ｂ）のレジスタ３０６ａ（３０６ｂ）を具体的に示したものである。
レジスタ３０６ａ（３０６ｂ）には、例えば、各ピクセルがＲ（ｒｅｄ）、Ｇ（ｇｒｅｅｎ）、Ｂ（ｂｌｕｅ）のデータで構成される”Ｒａｗ  ＲＧＢ  ｆｏｒｍａｔ”（以下、単に「ＲＧＢフォーマット」と言う）に対するフォーマット情報が保持される。
【０１０４】
この場合、レジスタ３０６ａ（３０６ｂ）は、上記図１６に示すように、入力のＸ方向の割合の情報が保持される領域（ｉｎＸ−ｒａｔｅ）３５１、入力のＹ方向の割合の情報が保持される領域（ｉｎＹ−ｒａｔｅ）３５２、出力のＸ方向の割合の情報が保持される領域（ｕｔＸ−ｒａｔｅ）３５３、出力のＹ方向の割合の情報が保持される領域（ｕｔＹ−ｒａｔｅ）３５４、ＸＹの固定ピクセルサイズ示す情報が保持される領域（ＸＹ−ｓｉｚｅ）３５５、ピクセルあたりのビット数を示す情報が保持される領域（ｂｉｔ−ｐｉｘｅ）３５６、Ｘ方向のピクセル数を示す情報が保持される領域（Ｘ−ｓｉｚｅ）３５７、Ｙ方向のピクセル数を示す情報が保持される領域（Ｙ−ｓｉｚｅ）３５８、ビットあたりの色面を示す情報が保持される領域（ｐｌａｎｅ）３５９、Ｘ方向の分解を示す情報が保持される領域（Ｘ−ｒｅｓｏｌｕｔｉｏｎ）３６０、Ｙ方向の分解を示す情報が保持される領域（Ｙ−ｒｅｓｏｌｕｔｉｏｎ）３６１、及びピクセルの種類を示す情報が保持される領域（ｐｉｘｅｌ−ｆｏｒｍａｔ）３６２を含んでいる。
【０１０５】
プリンタ１０２は、レジスタ３０６ａ（３０６ｂ）により与えられたＲＧＢフォーマットのイメージデータの内容に合わせて、Ｘ及びＹ方向での変倍、解像度変換、ピクセルサイズの譲歩等に基づいて印字出力することが可能となる。
【０１０６】
ここで、上記図１１に示したプリンタフォーマットレジスタグループ３０５ａ〜３０７ａ（３０５ｂ〜３０７ｂ）のレジスタ３０６ａ（３０６ｂ）に続く他のレジスタについても、上述したレジスタ３０５ａ（３０５ｂ）及びレジスタ３０６ａ（３０６ｂ）と同様に、種々のフォーマット情報が保持されるが、ダイレクトプリントプリンタがサポートするイメージデータフォーマットとしては、例えば、図１７に示すようなフォーマットが挙げられる。
本実施の形態では、プリンタ１０２は、上記図１７に示すような種々のフォーマットのうちの何れかのフォーマットに従ったデータをサポートするようになされている。
【０１０７】
尚、ダイレクトプリントプリンタがサポートするイメージデータフォーマットとしては、上記図１７に示したフォーマットに限られることはなく、オプションとして、他のフォーマットをサポートするようにしてもよい。
【０１０８】
図１８は、プリンタ１０２へのフォーマット設定処理の流れを示したものである。
【０１０９】
先ず、デジカメ１０１（画像供給デバイス）は、ＩＮＱＵＩＲＹ用にコマンド”ＳｅｔＦｏｒｍａｔ”（上記図１０参照）をコマンドフレームとして、プリンタ１０２のコマンドレジスタ２６１ｂ（上記図９参照）へ書き込む（ステップＳ３７０）。
【０１１０】
次に、プリンタ１０２は、応答”ＳｅｔＦｏｒｍａｔＲｅｓｐｏｎｓｅ”（上記図１０参照）を、デジカメ１０１のレスポンスレジスタ２６２ａへ書き込む（ステップＳ３７１）。
これにより、デジカメは、プリンタ１０２のフォーマットレジスタ２６４の読込専用レジスタ（ＩＮＱＵＩＲＹ）３０１（上記図１１参照）のアドレスを認識する。
【０１１１】
次に、デジカメ１０１は、ＣＯＮＴＲＯＬ／ＳＴＡＴＵＳ用にコマンド”ＳｅｔＦｏｒｍａｔ”（上記図１０参照）をコマンドフレームとして、プリンタ１０２のコマンドレジスタ２６１ｂ（上記図９参照）へ書き込む（ステップＳ３７２）。
【０１１２】
次に、プリンタ１０２は、応答”ＳｅｔＦｏｒｍａｔＲｅｓｐｏｎｓｅ”（上記図１０参照）を、デジカメ１０１のレスポンスレジスタ２６２ａへ書き込む（ステップＳ３７３）。
これにより、デジカメは、プリンタ１０２のフォーマットレジスタ２６４の読込専用レジスタ（ＩＮＱＵＩＲＹ）３０１に続く、読込／書込レジスタ（ＣＯＮＴＲＯＬ／ＳＴＡＴＵＳ）３０２のアドレスを認識する。
【０１１３】
次に、デジカメ１０１は、ステップＳ３７１でのプリンタ１０２からの応答により認識したプリンタ１０２のフォーマットレジスタ２６４の読込専用レジスタ（ＩＮＱＵＩＲＹ）３０１のアドレスを元に、その読込専用レジスタ（ＩＮＱＵＩＲＹ）３０１の内容から、プリンタ１０２がサポートしているフォーマットの設定項目を認識する（ステップＳ３７４−１〜ステップＳ３７４−ｍ）。
すなわち、デジカメ１０１は、読込専用レジスタ（ＩＮＱＵＩＲＹ）３０１のプリンタフォーマットレジスタグループ３０５ａ〜３０７ａの内容を順次読み取って、プリンタ１０２がサポートしているフォーマットの設定項目を認識する。
【０１１４】
そして、デジカメ１０１は、プリンタ１０２のフォーマットレジスタ２６４の読込／書込レジスタ（ＣＯＮＴＲＯＬ／ＳＴＡＴＵＳ）３０２のプリンタフォーマットレジスタグループ３０５ｂ〜３０７ｂの各レジスタの内容を読み取り（ステップＳ３７５−１〜ステップＳ３７５−ｎ）、当該各レジスタに対して、所望するフォーマットの情報を書き込む（ステップＳ３７６−１〜ステップＳ３７６−ｎ）。
【０１１５】
《ＰＵＬＬ型データ転送》
上記図１に示した本実施の形態における通信システム１００は、プリンタ１０２が、デジカメ１０１内のメモリからデータを読み出す際のデータ転送として、ＰＵＬＬ型データ転送方法を採用している。
【０１１６】
ＰＵＬＬ型データ転送方法において、デジカメ１０１とプリンタ１０２の間のコマンド及びレスポンスの出力動作は、ＦＣＰに準拠しており、例えば、図１９に示すように、デジカメ１０１がプリンタ１０２のコマンドレジスタ２６１ｂに対してコマンドフレーム３８１を書き込む動作と、プリンタ１０２がデジカメ１０１のレスポンスレジスタ２６２ａへレスポンスフレーム３８２を書き込む動作とによって実施される。
【０１１７】
一方、データフレーム３８３の書き込み動作については、コマンドフレーム３８１の書き込み動作及びへレスポンスフレーム３８２の書き込み動作とは異なり（ＦＣＰに準拠した動作とは異なり）、プリンタ１０２が、デジカメ１０１のデータレジスタ２６３ａの内容（イメージデータ）をデータフレーム３８３として、プリンタ１０２のデータレジスタ２６３ｂヘリード・トランザクションを使用して読み取る一方向の動作だけで実施される。
【０１１８】
図２０は、デジカメ１０１とプリンタ１０２が、ＤＰＰを使用してデータ転送を行う際の、上述したＰＵＬＬ型データ転送方式に従った動作を示したものである。
尚、以下の説明における、フォーマット設定のコマンド及びレスポンスの動作については、上記図１８を用いて説明した通りであり、”Ｌｏｇｉｎ”、”Ｌｏｇｏｕｔ”、”ＯｐｅｎＣｈａｎｎｅｌ”、”ＣｌｏｓｅＣｈａｎｎｅｌ”のコマンド及びレスポンスの動作、”ＢｕｆｆｅｒＣｏｎｆｉｇ”、”ＳｅｔＢｕｆｆｅｒ”のコマンド及びレスポンスの動作については、上述したＰＵＬＬ型データ転送方法での動作と同様であるため、ここではその詳細な説明は省略する。
【０１１９】
先ず、デジカメ１０１は、プリンタ１０２のバッファ領域についての情報（バッファサイズやバッファアドレス等）を問い合わせるための”ＢｕｆｆｅｒＣｏｎｆｉｇ”のコマンドをコマンドフレームとして、プリンタ１０２のコマンドレジスタ２６１ｂへ書き込む（ステップＳ３９１）。
【０１２０】
次に、プリンタ１０２は、コマンドレジスタ２６１ｂへ書き込まれた”ＢｕｆｆｅｒＣｏｎｆｉｇ”に対するレスポンスをレスポンスフレームとして、デジカメ１０１のレスポンスレジスタ２６２ａへ書き込む（ステップＳ３９２）。
これにより、デジカメ１０１は、プリンタ１０２のバッファ領域についての情報（バッファサイズやバッファアドレス等）を認識する。
【０１２１】
次に、デジカメ１０１は、デジカメ１０１がプリンタ１０２側に読み出すべきバッファサイズ及びバッファアドレスを設定するための”ＢｕｆｆｅｒＣｏｎｆｉｇ”のコマンドをコマンドフレームとして、プリンタ１０２のコマンドレジスタ２６１ｂへ書き込む（ステップＳ３９３）。
【０１２２】
次に、プリンタ１０２は、コマンドレジスタ２６１ｂへ書き込まれた”ＢｕｆｆｅｒＣｏｎｆｉｇ”に対するレスポンスをレスポンスフレームとして、デジカメ１０１のレスポンスレジスタ２６２ａへ書き込む（ステップＳ３９４）。
これにより、デジカメ１０１は、プリンタ１０２に対して、デジカメ１０１がプリンタ１０２側に読み出すべきバッファサイズ及びバッファアドレスの設定が完了したことを認識する。
【０１２３】
次に、デジカメ１０１は、”ＳｅｔＢｕｆｆｅｒ”のコマンドをコマンドフレームとして、プリンタ１０２のコマンドレジスタ２６１ｂへ書き込むことで、データ転送を開始可能であることをプリンタ１０２へ通知する（ステップＳ３９５）。
【０１２４】
次に、プリンタ１０２は、コマンドレジスタ２６１ｂへ書き込まれた”ＳｅｔＢｕｆｆｅｒ”に対するレスポンスをレスポンスフレームとして、デジカメ１０１のレスポンスレジスタ２６２ａへ書き込む（ステップＳ３９６）。
これにより、デジカメ１０１は、プリンタ１０２側がデータ取り込みの準備ができたことを認識する。
【０１２５】
その後、デジカメ１０１は、プリンタ１０２に対して、データ転送を開始する。
すなわち、デジカメ１０１及びプリンタ１０２は、それぞれのデータレジスタ２６３ａ及び２６３ｂを用いて、先ず、プリンタ１０２がデジカメ１０１に対して、”ＰｕｌｌＢｕｆｆｅｒ”リクエスト（リード・トランザクションによる要求パケット）を発行し（ステップＳ３９７）、次に、デジカメ１０１が当該リクエストに対する応答パケットをプリンタ１０２に対して発行することでデータ転送を行う（ステップＳ３９８）。これにより、デジカメ１０１がプリンタ１０２に通知したバッファアドレスに対してのデータ転送（ＰＵＬＬ型データ転送方式でのデータ転送）が行われることになる。
【０１２６】
上述のデータ転送の動作が繰り返し行われ（ステップＳ４００）、プリンタ１０２が、”ＳｅｔＢｕｆｆｅｒ”レスポンスをレスポンスフレームとして、デジカメ１０１のレスポンスレジスタ２６２ａへ書き込むことで（ステップＳ３９９）、デジカメ１０１は、全てのデータをプリンタ１０２に対して転送し終えたことを認識する。
【０１２７】
図２１は、デジカメ１０１のデータレジスタ２６３ａとそのバッファ４１１の関係を示したものである。
【０１２８】
上記図２１に示すように、データレジスタ２６３ａで設定された”Ｄｉｓｔｉｎａｔｉｏｎ＿Ｏｆｆｓｅｔ”の値に従って、バッファ４１１の読出開始アドレス”ＢｕｆｆｅｒＡｄｄｒｅｓｓ”が決定され、その読出開始アドレス”ＢｕｆｆｅｒＡｄｄｒｅｓｓ”により示される領域のデータを読み出しが、リード・トランザクションによって行われる。
【０１２９】
”Ｄｉｓｔｉｎａｔｉｏｎ＿Ｏｆｆｓｅｔ”の値は、毎回、データレジスタ２６３ａの”ＤａｔａＬｅｎｇｔｈ”分インクリメントされるようになされている。このような”Ｄｉｓｔｉｎａｔｉｏｎ＿Ｏｆｆｓｅｔ”の値に従って、連続したバッファ４１１のアドレスに対して、繰り返しデータを読み出すことで、バッファ４１１内のデータを連続して読み出すことができる。
【０１３０】
上述のようにして、デジカメ１０１内のバッファ４１１に保持されているデータが、プリンタ１０２へと転送される。このようなデータ転送、すなわちＰＵＬＬ型データ転送方式に従ったデータ転送により、プリンタ１０２が、デジカメ１０１内のバッファ４１１に書き込まれたデータを直接アドレスを指定して読み出すことが可能となる。
【０１３１】
《画像データのファイル構成》
上記図２１に示したようなバッファ４１１（デジカメ１０１内のメモリ）には、デジカメ１０１にて撮影して得られた撮影画像等の画像データが保持される。この画像データは、次のようなファイル形式に従った画像ファイルとして構成される。
本実施の形態では、特に、上述したように、デジカメ１０１がプリンタ１０２に対して、画像データを保持しているバッファ４１１の情報（バッファアドレスやバッファサイズ等のフォーマット情報）を通知するように構成しているため、プリンタ１０２は、その情報を元に、次のようにして、バッファ４１１内の画像データを任意に選択して取り込むことができる。
【０１３２】
尚、本実施の形態では、採用するファイル形式の一例として、ＥＸＩＦファイル形式を挙げるが、これに限られることはなく、サムネイル画像を含んだファイル形式であればよい。
【０１３３】
図２２は、ＥＸＩＦファイル形式に従った画像ファイルの構成を示したものである。
ここでの画像ファイルは、”ＥＸＩＦヘッダ”（４２１）、”ＴＩＦＦデータ部”（４２２）、及び”ＪＰＥＧデータ部”（４２３）から構成される。
【０１３４】
ＴＩＦＦデータ部４２１は、ＪＰＥＧ画像の情報の保持領域（以下、「ＪＰＥＧ画像領域」と言う）４２２ａ、デジカメ１０１独自の情報の保持領域（以下、「デジカメ情報領域」と言う）４２２ｂ、及びサムネイル画像の情報の保持領域（以下、「サムネイル画像領域」と言う）４２２ｃを含んでいる。
【０１３５】
ＪＰＥＧ画像領域４２２ａには、実際に撮影して得られた撮影画像（本画像）がＪＰＥＧ方式に従って圧縮された画像情報を含む情報が格納される。
【０１３６】
上述のようなＥＸＩＦファイル形式に従った画像ファイルは、そのファイル全体が、ＪＰＥＧ方式に従ったファイルの形態として見える点が特徴である。
【０１３７】
図２３及び図２４は、上記図２２に示したＥＸＩＦヘッダ４２１及びＴＩＦＦデータ部４２２を具体的に示したものである。
【０１３８】
例えば、ＥＸＩＦヘッダ４２１、ＪＰＥＧ画像領域４２２ａ、及びデジカメ情報領域４２２ｂに格納されている情報から、撮影日時のデータ及びサムネイル画像を取り出す場合、先ず、当該画像ファイルのアドレス”ｘ０００”ｈから始まるＥＸＩＦヘッダ４２１を参照すると、ＥＸＩＦヘッダ４２１には、ＴＩＦＦデータ部４２２の開始アドレス及び当該画像ファイル全体のサイズが格納されている。
ここでは、ＴＩＦＦデータ部４２２の開始アドレスが”０１００”ｈであり、当該画像ファイル全体のサイズが”１７９２バイト”であることから、アドレス”ｘ１００”ｈからＴＩＦＦデータ部４２２が始まり、当該画像ファイルの終わりのアドレスが”ｘ７ＦＦ”ｈであることが認識できる。
【０１３９】
次に、アドレス”ｘ１００”ｈから始まるＴＩＦＦデータ部４２２を参照すると、そのＪＰＥＧ画像領域４２２ａには、独自情報の領域情報が格納されている。
ここでは、ＪＰＥＧ画像領域４２２ａにおいて、最初の独自情報オフセットが”ｘ１００”ｈであることから、ＴＩＦＦデータ部４２２の開始アドレスである”ｘ１００”ｈから”ｘ１００”ｈ先の”ｘ２００”ｈからの領域に、実際にデジカメ１０１独自の情報が格納されていることを認識できる。すなわち、デジカメ情報領域４２２ｂの実際の開始アドレスが”ｘ２００”ｈであることを認識できる。
【０１４０】
次に、アドレス”ｘ２００”ｈ”からのデジカメ情報領域４２２ｂを参照すると、デジカメ情報領域４２２ｂには、撮影時間のタグが格納されている。
ここでは、撮影時間のタグを検索することで、オフセット値の”ｘ１Ｃ４”ｈが得られるため、ＴＩＦＦデータ部４２２の開始アドレスである”ｘ１００”ｈから”ｘ１Ｃ４”ｈ先の”ｘ２Ｃ４”ｈからの領域に、デジカメ１０１での撮影日時の情報が格納されていることを認識できる。これにより、撮影日時情報として、「１９９７年７月６目１２時３６分１０秒」を取得することができる。
【０１４１】
上述のようにして、撮影日時の情報が得られると、次に、サムネイル画像を得るために、アドレス”ｘ１００”ｈから始まるＴＩＦＦデータ部４２２を参照すると、そのＪＰＥＧ画像領域４２２ａには、サムネイル画像の領域を示すオフセット情報が格納されている。
ここでは、サムネイル画像の領域を示すオフセットが”ｘ２００”ｈであることから、ＴＩＦＦデータ部４２２の開始アドレスである”ｘ１００”ｈから”ｘ２００”ｈ先の”ｘ３００”ｈからの領域に、実際にサムネイル画像の情報が格納されていることを認識できる。すなわち、サムネイル画像領域４２２ｃの実際の開始アドレスが”ｘ３００”ｈであることを認識できる。
【０１４２】
次に、アドレス”ｘ２００”ｈからのサムネイル画像領域４２２ｃを参照すると、サムネイル画像領域４２２ｃには、サムネイルオフセットのタグが格納されている。
ここでは、サムネイルオフセットのタグを検索することで、オフセット値の”ｘ２２０”ｈが得られるため、ＴＩＦＦデータ部４２２の開始アドレスである”ｘ１００”ｈから”ｘ２２０”ｈ先の”ｘ３２０”ｈからの領域に、サムネイル画像が格納されていることを認識できる。
【０１４３】
また、アドレス”ｘ２００”ｈからのサムネイル画像領域４２２ｃを参照すると、サムネイル画像領域４２２ｃには、サムネイルサイズのタグが格納されている。
ここでは、サムネイルサイズのタグを検索することで、バイト数”４８００”バイトが得られるため、サムネイル画像が、”ｘ３２０”ｈからバイト数”４８００”格納されていることを認識できる。これにより、バイト数”４８００”分のサムネイル画像を取得することができる。
尚、ここでのサムネイル画像は、ＴＩＦＦ形式に従って、本画像を８０×６０ドットに縮小した非圧縮データから構成されたものとする。
【０１４４】
上述のようにして、画像ファイルのヘッダや各種情報を参照することで、当該画像ファイル内のサムネイル画像やその撮影日時の情報を取得することができる。
【０１４５】
図２５は、デジカメ１０１内のバッファ４１１に、上記図２２に示したような画像ファイルが複数保持された状態（メモリマップ）を示したものである。
【０１４６】
デジカメ１０１では、ディレクトリ情報が格納されるアドレス”００００”ｈ〜”０７ＦＦ”ｈの領域（以下、「ディレクトリ領域」と言う）４３１に続いて、複数の画像ファイル４３２（１）〜４３２（ｎ）が保持されるようになされている。
【０１４７】
ディレクトリ領域４３１には、それぞれの画像ファイル４３２（１）〜４３２（ｎ）の開始アドレスやそのサイズを示す情報が格納される。これにより、画像ファイル４３２（１）〜４３２（ｎ）の中から所望する画像ファイル（例えば、画像ファイル４３２（３））を抽出する際には、ディレクトリ領域４３１の情報から得られる画像ファイル４３２（３）の開始アドレス４３３により、画像ファイル４３２（３）を抽出することができる。
【０１４８】
具体的には例えば、上記図２５では、画像ファイル４３２（１）の開始アドレスが”０８００”ｈ、画像ファイル４３２（２）の開始アドレスが”１０００”ｈ、画像ファイル４３２（２）の開始アドレスが”１８００”ｈ、・・・となっている。すなわち、それぞれの画像ファイル４３２（１），４３２（２），４３２（３），・・・の開始アドレスは、”０８００”ｈおきに設定されており、これを示す情報（マップ情報）が、ディレクトリ領域４３１に格納される。
したがって、ｎ番目の画像ファイル４３２（ｎ）を抽出したい場合には、”０８００”ｈのｎ倍したアドレスを開始アドレスとすればよい。
【０１４９】
図２６は、上記図２５に示したような、デジカメ１０１内のメモリ（バッファ４１１）に保持されている複数の画像ファイルから任意の画像ファイルのサムネイル画像及びその撮影日時の情報を読み出す際の動作を示したものである。
ここでは、説明の簡単のために、画像ファイル４３２（１）〜４３２（ｎ）のうちの画像ファイル４３２（３）を抽出するものとする。
【０１５０】
先ず、ディレクトリ領域４３１内の情報を読み出す（ステップＳ４４１）。
次に、ディレクトリ領域４３１内の情報に基づいて、所望する画像ファイル４３２（３）が３番目の画像ファイルであることから、”０８００”ｈの３倍した”１８００”ｈを、画像ファイル４３２（３）の開始アドレスとして算出する（ステップＳ４４２）。
【０１５１】
次に、画像ファイル４３２（３）の開始アドレス”１８００”ｈに基づいて、画像ファイル４３２（３）のＥＸＩＦヘッダ４２１内の情報（上記図２３参照）を読み出す（ステップＳ４４３）。
【０１５２】
次に、ＥＸＩＦヘッダ４２１内の情報により、上述したようにして、画像ファイル４３２（３）のＪＰＥＧ画像領域４２２ａの開始アドレスを算出し、そのＪＰＥＧ画像領域４２２ａ内の情報により、デジカメ情報領域４２２ｂ及びサムネイル画像領域４２２ｃの開始アドレスを算出する（ステップＳ４４４）。
【０１５３】
そして、サムネイル画像領域４２２ｃの開始アドレスからの情報により、画像ファイル４３２（３）内のサムネイル画像を取得すると共に、その撮影日時の情報を、デジカメ情報領域４２２ｂの開始アドレスからの情報により取得する（ステップＳ４４５）。
【０１５４】
図２７は、上述したようにして、プリンタ１０２が、デジカメ１０１から通知されたバッファ４１１のアドレス及びサイズに基づいて、バッファ４１１内の画像ファイルからサムネイル画像のデータのみを読み出す様子を示したものである。
【０１５５】
上記図２７では、上述したようにして、ディレクトリ領域４３１の情報を元に、複数の画像ファイル４３２（１）〜４３２（ｎ）のサムネイル画像データの開始アドレスを取得した結果、画像ファイル４３２（１）のサムネイル画像データの開始アドレス４５１（１）は”０Ｂ２０”ｈ、画像ファイル４３２（２）のサムネイル画像データの開始アドレス４５１（２）は”１３２０”ｈ、画像ファイル４３２（３）のサムネイル画像データの開始アドレス４５１（３）は”１Ｂ２０”ｈ、・・・となっている。
すなわち、ｎ番目の画像ファイル４３２（ｎ）のサムネイル画像データの開始アドレス４５１（ｎ）は、
ｎ×０８００ｈ＋０３２０ｈ
なる式により算出することができる。
【０１５６】
上述のように、複数の画像ファイル４３２（１）〜４３２（ｎ）のサムネイル画像データを、そのデータの開始アドレスにより、個々に読み出すことができるため、プリンタ１０２が独自に必要なサムネイル画像を、デジカメ１０１内に保持されている画像ファイルから取り出すことができる。
【０１５７】
図２８は、上述のような構成によって、プリンタ１０２内に取り込まれたサムネイル画像を、プリンタ１０２にて印字出力（インデックスプリント）する際の、サムネイル画像の並びの一例を示したものである。
【０１５８】
上記図２８に示すように、プリンタ１０２は、デジカメ１０１から読み出したサムネイル画像を紙面上に並べてインデックスプリントするためのデータ形式に、当該サムネイル画像データを整えてから（画像の並び替え処理）、当該サムネイル画像データのインデックスプリントを行う。
【０１５９】
上記図２８では、１枚目〜６枚目のサムネイル画像（Ｎｏ．１〜Ｎｏ．６）を、左上からＸ方向に順に並べ、次の７枚目〜１２枚目のサムネイル画像（Ｎｏ．７〜Ｎｏ．１２）を、Ｙ方向にひとつずらして、左上からＸ方向に順に並べる、という並び順としている。
【０１６０】
上述のようなサムネイル画像の並び替え処理は、デジカメ１０１からサムネイル画像データを読み出したプリンタ１０２側で行う。すなわち、プリンタ１０２は、デジカメ１０１から読み出したサムネイル画像データを、１枚のインデックスデータとなるように、画像の並び替えを行う。これにより、デジカメ１０１内の保持されているサムネイル画像が、１枚のインデックスデータとして、プリンタ１０２から印刷出力されることになる。
【０１６１】
上述のような画像の並び替え処理及びインデックスプリント等の処理を行うプリンタ１０２は、例えば、図２９に示すような構成としている。
すなわち、プリンタ１０２は、上記図２９に示すように、プリンタ１０２全体の動作制御を司るＣＰＵ４６１と、サムネイル画像データの加工やデータ転送等の処理に使用されるＲＡＭ４６２と、ＣＰＵ４６１での動作制御のための処理プログラムや各種データ等が格納されたＲＯＭ４６３と、１３９４インターフェイスを実現するための物理層コントローラである１３９４ＰＨＹ４６５と、１３９４インターフェイスを実現するためのリンク層コントローラである１３９４ＬＩＮＫ４６４と、プリンタユニット（図示せず）の動作制御を司るプリンタコントローラ４６８と、プリンタユニットに組み込まれたヘッドユニット（Ｈｅａｄ）４６６と、プリンタユニットのモータユニット（Ｍｏｔｏｒ）４６７とを備えており、これらの各構成部は、バス４６９により互いに通信可能なように接続されている。
【０１６２】
このような構成によって、プリンタ１０２は、デジカメ１０１から１３９４インターフェイス（１３９４ＰＨＹ４６５及び１３９４ＬＩＮＫ４６４）を介して取り込んだ画像に対して、ＣＰＵ４６１により、ＲＯＭ４６３及びＲＡＭ４６２を使用した加工処理等を施し、その処理後の画像を、プリンタコントローラ４６８により、プリンタユニットのモータ４６７及びヘッド４６６を駆動することで、印刷出力するようになされている。
【０１６３】
図３０は、上述したようなインデックスプリントを行う際の、プリンタ１０２の動作を示したものである。
【０１６４】
先ず、デジカメ１０１内に保持されている画像ファイルのカウンタＬを初期化する（ステップＳ４７１）。
このカウンタＬは、上記図２５及び２７に示したような、画像ファイル４５１（１），４５１（２），４５１（３），・・・，４５１（ｎ）の番号を示すものであり、初期値としては、”１”を設定する。
【０１６５】
次に、デジカメ１０１から通知されたバッファ４１１のアドレス及びサイズの情報（デジカメ１０１内に保持されている画像データのフォーマット情報）に基づいて、カウンタＬにより示される画像ファイル４５１（Ｌ）のサムネイル画像を、上記図２６に示したフローチャートに従った処理により、デジカメ１０１から取得する（ステップＳ４７２）。
【０１６６】
次に、ステップＳ４７２にて取得したサムネイル画像を、上記図２８に示したような並びに従って並べ替え、インデックスプリント用のデータをＲＡＭ４６２上へ形成する（ステップＳ４７３）。
【０１６７】
次に、次の画像ファイル４５１（Ｌ＋１）について、ステップＳ４７２及びＳ４７３の処理を実行するために、カウンタＬをインクリメントする（ステップＳ４７４）。
【０１６８】
次に、ステップＳ４７４でのインクリメントの結果、カウンタＬの値が、デジカメ１０１内に保持されている画像ファイルの総数（ｎ）を超えたか否かを判別する（ステップＳ４７５）。
【０１６９】
ステップＳ４７５の判別の結果、”Ｌ＞ｎ”でない場合、すなわち未だ処理していない画像ファイルがデジカメ１０１内に存在する場合、ステップＳ４７２へと戻り、以降の処理ステップを繰り返し実行する。
【０１７０】
ステップＳ４７５の判別の結果、”Ｌ＞ｎ”である場合、すなわちデジカメ１０１内に存在する全ての画像ファイル４５１（１），４５１（２），４５１（３），・・・，４５１（ｎ）からサムネイル画像を読み出し、その並び替えを終えた場合、ＲＡＭ４６２上へ形成したインデックスプリント用のデータを、印刷出力する。
【０１７１】
尚、本発明の目的は、上述した本実施の形態のホスト及び端末の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読みだして実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が本実施の形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することとなる。
プログラムコードを供給するための記憶媒体としては、ＲＯＭ、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード等を用いることができる。
また、コンピュータが読みだしたプログラムコードを実行することにより、本実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ等が実際の処理の一部又は全部を行い、その処理によって本実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された拡張機能ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって本実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０１７２】
【発明の効果】
以上説明したように本発明では、他装置（ディジタルカメラ等）から通知された、画像ファイルのアドレス情報及び画像ファイルに含まれる情報（画像及びそのサムネイル画像等）のアドレス情報に基づいて、当該他装置内の画像ファイルに含まれる情報を取り込むように構成した。これにより、他装置内に保持されている画像ファイルに含まれる情報を任意に取り込むことができる。例えば、他装置から取り込んだ複数の画像ファイルに含まれる情報を、任意の順序に並べ替え、それを一括出力（印刷出力等）するように構成した場合、他装置内に保持されている画像ファイルに含まれる情報を、容易に認識することができ、所望する画像ファイルに含まれる情報を効率的に選択することもできる。
【０１７３】
具体的には例えば、ディジタルカメラ（第１のデバイス）とプリンタ（第２のデバイス）の間における画像データのやり取りにおいて、ディジタルカメラは、その内部メモリに保持している画像ファイル（撮影画像、当該撮影画像を縮小したサムネイル画像等を含む）のフォーマット情報を、プリンタへ通知する。これにより、プリンタは、ＰＵＬＬ型データ転送方式等を用いて、ディジタルカメラの内部メモリに保持されている画像ファイルから、サムネイル画像のみをダイレクトに取り込むことができる。したがって、データ転送におけるデバイス間のネゴシエーション処理を簡略化することが可能となる。
また、プリンタにおいて、ディジタルカメラから取り込んだサムネイル画像を編集して、インデックスプリント（一括インデックス画像の印刷）を行うように構成した場合、ディジタルカメラ内の保持されている多数の撮影画像の中から所望する画像を容易に選択することができる。したがって、操作性の向上が可能となる。
【図面の簡単な説明】
【図１】本発明を適用した通信システムの構成を示すブロック図である。
【図２】上記通信システムでの通信手段として使用する１３９４シリアルバスを規定している「ＩＥＥＥ１３９４」の概要の説明において、当該１３９４シリアルバスを用いて構成されるネットワークシステムを説明するための図である。
【図３】上記１３９４シリアルバスの構成を説明するための図である。
【図４】上記１３９４シリアルバスにおけるアドレス空間を説明するための図である。
【図５】上記１３９４シリアルバスのケーブルの構成を説明するための図である。
【図６】上記１３９４シリアルバスによるデータ転送（ＤＳ−Ｌｉｎｋ符号化方式によるデータ転送）を説明するための図である。
【図７】上記１３９４シリアルバスのＰｌｕｇ＆Ｐｌａｙ機能を説明するための図である。
【図８】上記通信システムにおいて、画像供給デバイス（ディジタルカメラ）とプリンタの間でデータ転送を行うために用いられるレジスタを説明するための図である。
【図９】上記画像供給デバイス（ディジタルカメラ）とプリンタの間でのデータの流れを説明するための図である。
【図１０】上記画像供給デバイス（ディジタルカメラ）とプリンタの間でのコマンド及びレスポンスの一例を説明するための図である。
【図１１】上記プリンタのフォーマットレジスタを説明するための図である。
【図１２】上記フォーマットレジスタの読込／書込レジスタ（ＣＯＮＴＲＯＬ／ＳＴＡＴＵＳ）を説明するための図である。
【図１３】上記フォーマットレジスタの共通レジスタグループ（ＧＬＯＢＡＬ）を説明するための図である。
【図１４】上記フォーマットレジスタの共通レジスタグループ（ＬＯＣＡＬ）を説明するための図である。
【図１５】上記フォーマットレジスタのプリンタフォーマットレジスタグループ（ｆｏｒｍａｔ［１］）を説明するための図である。
【図１６】上記フォーマットレジスタのプリンタフォーマットレジスタグループ（ｆｏｒｍａｔ［２］）を説明するための図である。
【図１７】上記プリンタで対応可能なフォーマット形式の一例を説明するための図である。
【図１８】上記プリンタへのフォーマット設定処理を説明するための図である。
【図１９】上記画像供給デバイス（ディジタルカメラ）とプリンタの間でのデータの流れ（ＰＵＬＬ型データ転送方式に従ったデータの流れ）を説明するための図である。
【図２０】上記画像供給デバイス（ディジタルカメラ）とプリンタの間でのコマンド及びレスポンスの動作（ＰＵＬＬ型データ転送方式に従った動作）を説明するための図である。
【図２１】上記画像供給デバイス（ディジタルカメラ）のデータレジスタとそのバッファの関係を説明するための図である。
【図２２】上記バッファ内に保持される画像ファイルの構成を説明するための図である。
【図２３】上記画像ファイルのＥＸＩＦヘッダ及びＴＩＦＦデータ部（ＪＰＥＧ画像領域及びデジカメ情報領域４２２ｂ）を説明するための図である。
【図２４】上記画像ファイルのＴＩＦＦデータ部（サムネイル画像領域４２２ｃ）を説明するための図である。
【図２５】複数の上記画像ファイルが上記画像供給デバイス（ディジタルカメラ）へ保持された状態を説明するための図である。
【図２６】上記画像ファイルからサムネイル画像を抽出する処理を説明するための図である。
【図２７】上記サムネイル画像を抽出する処理において使用される画像ファイルの開始アドレスを説明するための図である。
【図２８】上記プリンタにおいて、上記サムネイル画像を抽出する処理により取得した複数のサムネイル画像をインデックスプリントするための画像の並び替えの一例を説明するための図である。
【図２９】上記プリンタの構成を示すブロック図である。
【図３０】上記プリンタの動作を示すフローチャートである。
【符号の説明】
１００  通信システム
１０１  画像供給デバイス（ディジタルカメラ）
１０２  プリンタ
４６１  ＣＰＵ
４６２  ＲＡＭ
４６３  ＲＯＭ
４６４  １３９４インターフェイスを実現するための物理層コントローラ（１３９４ＰＨＹ）
４６５  １３９４インターフェイスを実現するためのリンク層コントローラ（１３９４ＬＩＮＫ）
４６６  プリンタユニットに組み込まれたヘッドユニット（Ｈｅａｄ）
４６７  プリンタユニットのモータユニット（Ｍｏｔｏｒ）
４６８  プリンタコントローラ
４６９  バス
【図１】
0004343372.tif 000002
【図２】
0004343372.tif 000003
【図３】
0004343372.tif 000004
【図４】
0004343372.tif 000005
【図５】
0004343372.tif 000006
【図６】
0004343372.tif 000007
【図７】
0004343372.tif 000008
【図８】
0004343372.tif 000009
【図９】
0004343372.tif 000010
【図１０】
0004343372.tif 000011
【図１１】
0004343372.tif 000012
【図１２】
0004343372.tif 000013
【図１３】
0004343372.tif 000014
【図１４】
0004343372.tif 000015
【図１５】
0004343372.tif 000016
【図１６】
0004343372.tif 000017
【図１７】
0004343372.tif 000018
【図１８】
0004343372.tif 000019
【図１９】
0004343372.tif 000020
【図２０】
0004343372.tif 000021
【図２１】
0004343372.tif 000022
【図２２】
0004343372.tif 000023
【図２３】
0004343372.tif 000024
【図２４】
0004343372.tif 000025
【図２５】
0004343372.tif 000026
【図２６】
0004343372.tif 000027
【図２７】
0004343372.tif 000028
【図２８】
0004343372.tif 000029
【図２９】
0004343372.tif 000030
【図３０】
0004343372.tif 000031