(57)【要約】  【課題】  装置内部の情報を取得・設定するためのプログラムを格納しても、フラッシュＲＯＭの空き容量減少を抑制でき、他のプログラム等が有効利用できるようにする。  【解決手段】  ホストからのＰＪＬコマンドに応じた処理を実行するためのＰＪＬ処理プログラム７０は、主として、ＰＪＬコマンドを認識するコマンド・オプション認識プログラム７２と、ＰＪＬコマンドによる要求に対応可能な情報名（オプション名）がその情報の所在と関連づけられてリストアップされたオプション辞書７６と、要求対象の情報がオプション辞書７６にある場合にその要求に応じた処理を実行するオプション実行プログラム７４とにより構成されている。このうち、オプション辞書７６はフラッシュＲＯＭ７６に格納されるが、変更される可能性がほとんどない普遍的なコマンド・オプション認識プログラム７２及びオプション実行プログラム７４は、マスクＲＯＭ１４に格納される。【選択図】  図２
2006119957.tif 000002
【特許請求の範囲】
【請求項１】
プログラムが記憶された記憶手段と、
前記記憶手段に記憶されたプログラムに基づいて装置全体の制御を実行する制御手段と、
を備えた情報処理装置であって、
前記プログラムとして、当該情報処理装置に関する情報であるデバイス情報の取得又は設定を要求するコマンドに対し、その要求されたデバイス情報の取得又は設定を行うためのコマンド処理プログラムを有し、
前記コマンド処理プログラムは、
前記コマンドによる要求に対応可能なデバイス情報の種類を示すデバイス情報名が、対応するデバイス情報の所在を示す所在情報と関連付けられてリストアップされたテーブル部と、
前記コマンドの内容を解析し、要求対象の前記デバイス情報に対応した前記所在情報を前記テーブル部に基づいて取得するための解析プログラム部と、
を有しており、
前記記憶手段として、
記憶内容を書き換え不可能な第１の記憶手段と、
記憶内容を書き換え可能な第２の記憶手段と、
を有し、
前記解析プログラム部は前記第１の記憶手段に記憶され、前記テーブル部は前記第２の記憶手段に記憶されている
ことを特徴とする情報処理装置。
【請求項２】
前記解析プログラム部は、要求対象の前記デバイス情報に対応した前記デバイス情報名が前記テーブル部にリストアップされているか否かを判断するよう構成されており、
前記コマンド処理プログラムは、要求対象のデバイス情報に対応した前記デバイス情報名と関連づけられている前記所在情報に基づいて、そのデバイス情報について前記コマンドの内容に応じた処理を実行するための実行プログラム部を有し、
前記制御手段は、前記解析プログラム部を実行することにより、要求対象の前記デバイス情報に対応した前記デバイス情報名が前記テーブル部にリストアップされていると判断した場合、その要求対象のデバイス情報に対して前記実行プログラムを実行する
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記実行プログラム部は、前記第１の記憶手段に記憶されている
ことを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記実行プログラム部は、要求対象の前記デバイス情報が予め決められた特定デバイス情報であった場合に、前記コマンドの内容に応じた処理に加え、その特定デバイス情報に対して予め設定された特定処理を行うよう構成されており、
前記実行プログラム部のうち、少なくとも前記特定処理を行うための部分は、前記第２の記憶手段に記憶されている
ことを特徴とする請求項２記載の情報処理装置。
【請求項５】
前記実行プログラムのうち、前記特定処理を行うための部分は前記第２の記憶手段に記憶され、その他の部分は前記第１の記憶手段に記憶されている
ことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記デバイス情報が格納されたデバイス情報格納手段を備え、
前記テーブル部において前記デバイス情報名と関連づけられている前記所在情報は、前記デバイス情報格納手段における前記デバイス情報の所在を示すものであり、
前記制御手段は、前記コマンド処理プログラムに従って、前記テーブル部において関連づけられている前記所在情報に基づいて前記デバイス情報格納手段へアクセスすることにより、前記コマンドの内容に応じた処理を行う
ことを特徴とする請求項１〜５いずれかに記載の情報処理装置。
【請求項７】
前記コマンドによる要求に対応可能な前記デバイス情報を新たに追加すべき旨の追加指令に従って、その追加指令対象のデバイス情報を示すデバイス情報名とそのデバイス情報の所在を示す所在情報とを関連づけた追加テーブルを生成する対応情報追加手段を備え、
前記解析プログラム部は、要求対象の前記デバイス情報の前記所在情報を、前記テーブル部及び前記追加テーブルに基づいて取得するよう構成されている
ことを特徴とする請求項１〜５いずれかに記載の情報処理装置。
【請求項８】
前記デバイス情報が格納されたデバイス情報格納手段を備え、
前記テーブル部及び前記追加テーブルにおいて前記デバイス情報名と関連づけられている前記所在情報は、前記デバイス情報格納手段における所在を示すものであり、
前記制御手段は、前記コマンド処理プログラムに従って、前記テーブル部又は追加テーブル部において関連づけられている前記所在情報に基づいて前記デバイス情報格納手段へアクセスすることにより、前記コマンドの内容に応じた処理を行う
ことを特徴とする請求項７記載の情報処理装置。
【請求項９】
前記追加テーブルが格納される追加テーブル格納手段を備え、
前記対応情報追加手段による前記追加テーブルの生成は、前記追加テーブルを前記追加テーブル格納手段へ格納することにより行われる
ことを特徴とする請求項７又は８記載の情報処理装置。
【請求項１０】
前記追加指令には、追加すべきデバイス情報に対応した前記デバイス情報名及び前記所在情報が含まれており、
前記対応情報追加手段は、前記追加指令に含まれている前記デバイス情報と前記所在情報に基づいて前記追加テーブルを生成する
ことを特徴とする請求項７〜９いずれかに記載の情報処理装置。
【請求項１１】
コンピュータを前記対応情報追加手段として機能させるための対応情報追加プログラムを有し、
前記制御手段が対応情報追加プログラムを実行することにより、前記対応情報追加手段としての機能が実現される
ことを特徴とする請求項７〜１０いずれかに記載の情報処理装置。
【請求項１２】
前記対応情報追加プログラムは、前記コマンド処理プログラムの一部として組み込まれ、前記第１の記憶手段に記憶されている
ことを特徴とする請求項１１記載の情報処理装置。
【請求項１３】
当該情報処理装置は、外部機器との間でデータの送受信が可能であって、前記外部機器から前記コマンドが入力されるよう構成されている
ことを特徴とする請求項１〜１２いずれかに記載の情報処理装置。
【請求項１４】
当該情報処理装置は、外部機器との間でデータの送受信が可能であって、前記外部機器から前記コマンド及び前記追加指令が入力されるよう構成されている
ことを特徴とする請求項７〜１２いずれかに記載の情報処理装置。
【請求項１５】
当該情報処理装置は、入力される印刷データに基づいて被記録媒体へ画像を形成する画像形成手段を備えており、
前記コマンドによる要求に対応可能なデバイス情報には、前記画像形成手段の動作に関わる情報が含まれる
ことを特徴とする請求項１〜１４いずれかに記載の情報処理装置。
【請求項１６】
前記第１の記憶手段はマスクＲＯＭであり、前記第２の記憶手段はフラッシュＲＯＭである
ことを特徴とする請求項１〜１５いずれかに記載の情報処理装置。
【請求項１７】
コンピュータを、請求項７〜１０いずれかに記載の情報処理装置における前記対応情報追加手段として機能させるための、対応情報追加プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部からの要求に応じて装置内部の情報を取得・変更し、取得要求であればその要求元へ要求された情報を返答することができる情報処理装置と、その情報処理装置で用いられる対応情報追加プログラムに関する。
【背景技術】
【０００２】
従来より、シリアルプリンタ、ページプリンタ等の印刷装置においては、印刷処理全般にかかわる各種プログラム・パラメータ等がファームウェアとしてＲＯＭに格納され、これらに基づいて各種動作が行われている。
【０００３】
このような印刷装置として、記憶されたデータの書き換えが不可能なマスクＲＯＭと、書き換え可能なフラッシュＲＯＭ（不揮発性）との２種類のＲＯＭを有し、最低限の初期動作が可能な状態に制御する初期動作プログラムやフラッシュＲＯＭ内のプログラムを更新するための書き換えプログラム等についてはマスクＲＯＭへ格納し、印刷処理に関する各種制御プログラムについてはフラッシュＲＯＭへ格納する技術が知られている（例えば、特許文献１参照。）。
【０００４】
この技術によれば、仮にフラッシュＲＯＭ内の制御プログラムに異常が生じても、マスクＲＯＭ内の初期動作プログラムによって少なくとも最低限の初期動作は可能となる。また、制御プログラムはフラッシュＲＯＭにあるため、必要に応じて制御プログラムの変更・追加・削除などが可能となる。
【０００５】
ところで、変更・追加・削除等を行う可能性のある制御プログラムの一つに、ＰＪＬコマンドを解析して所定の処理を実行するプログラム（以下「ＰＪＬ処理プログラム」という）がある。このＰＪＬ処理プログラムは、例えば印刷装置と通信可能に接続されたコンピュータから、印刷装置内の各種情報を取得するためのプリンタジョブ言語（ＰＪＬ；Printer Job Language）で記述されたコマンド（以下「ＰＪＬコマンド」ともいう）をプリンタ側で受信したときに、そのコマンドに応じて情報の返答あるいは内部情報の変更などを行うためのものである。そして、コマンドに応じて印刷装置からコンピュータ側へ返答された情報は、コンピュータ側でリードバックされることとなる。
【０００６】
ＰＪＬは、印刷装置が備える各種機能の制御を可能とするコマンド言語であり、Hewlett-Packard 社において開発され、その後他社でも採用された周知のものである。なお、このＰＪＬコマンドには、印刷装置のメーカーや機種の違いなどに応じて独自拡張されて多種多様な仕様がある。
【０００７】
このＰＪＬ処理プログラムには、ＰＪＬコマンドに対応可能な印刷装置内の情報とその情報の所在を示す所在情報とが関連づけられて登録された辞書（テーブル）があるが、その辞書に登録されている情報以外の新たな情報を取得したり設定変更できるようにしたい場合は、その新たな情報について情報名とその所在情報との関連づけなどをＰＪＬ処理プログラムに（詳細には辞書に）新規に追加する必要がある。つまり、ＰＪＬ処理プログラムは、ユーザや使用状況等によってその内容が変更される可能性があるプログラムである。
【０００８】
そのため、ＰＪＬ処理プログラムは、後から必要に応じて変更することができるよう、マスクＲＯＭではなく、記憶内容を書き換え可能なフラッシュＲＯＭに格納するようにしている。
【特許文献１】特開平１０−２８９０７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、近年、印刷装置の機能が多様化・高機能化する傾向が進む中で、フラッシュＲＯＭには、上記ＰＪＬ処理プログラム以外の様々なプログラムやデータが蓄積される傾向がある。その結果、フラッシュＲＯＭの容量が不足気味となり、場合によっては印刷装置の多機能化を阻害するおそれもある。
【００１０】
このようなフラッシュＲＯＭの容量不足を解消すべく、より容量の大きいフラッシュＲＯＭを用いることももちろん技術的には可能であり、そうすれば上記問題は解決できるのであるが、容量の大きいフラッシュＲＯＭを用いると当然ながらコストも上昇することとなる。そのため、コスト対効果の関係で、単純にフラッシュＲＯＭの容量を増やすことで解決することは現実的ではなく、フラッシュＲＯＭ全体の容量を増加させることなく上記問題を解決することが望まれていた。
【００１１】
本発明は上記課題に鑑みなされたものであり、装置内部の情報を取得・設定するためのプログラムを格納することによる、フラッシュＲＯＭ等の書き換え可能なＲＯＭの空き容量減少を抑制して、その書き換え可能なＲＯＭを他のプログラム等が有効に利用できるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するためになされた請求項１記載の発明は、プログラムが記憶された記憶手段と、その記憶手段に記憶されたプログラムに基づいて装置全体の制御を実行する制御手段とを備えた情報処理装置であって、前記プログラムとして、当該情報処理装置に関する情報であるデバイス情報の取得又は設定を要求するコマンドに対し、その要求されたデバイス情報の取得又は設定を行うためのコマンド処理プログラムを有する。
【００１３】
このコマンド処理プログラムは、テーブル部と解析プログラム部とを有している。テーブル部は、コマンドによる要求に対応可能なデバイス情報の種類を示すデバイス情報名が、対応するデバイス情報の所在を示す所在情報と関連付けられてリストアップされたものであり、解析プログラム部は、コマンドの内容を解析し、要求対象のデバイス情報に対応した所在情報をテーブル部に基づいて取得するためのものである。
【００１４】
また、記憶手段として、記憶内容を書き換え不可能な第１の記憶手段と、記憶内容を書き換え可能な第２の記憶手段とを有しており、解析プログラム部は第１の記憶手段に記憶され、テーブル部は第２の記憶手段に記憶されている。
【００１５】
このように構成された請求項１記載の情報処理装置では、コマンド処理プログラム全体が第２の記憶手段に記憶されるのではなく、コマンド処理プログラム中のテーブル部については第２の記憶手段に記憶させることにより後から変更等できるようにするものの、解析プログラム部については第１の記憶手段に記憶させている。そして、制御手段は、コマンドが入力された場合、第１の記憶手段に記憶された解析プログラム部に基づいてそのコマンドを解析し、要求されているデバイス情報の所在情報を、第２の記憶手段に記憶されているテーブル部に基づいて取得することとなり、これにより、要求されているデバイス情報へアクセスして所定の処理（取得或いは設定など）を行うこととなる。
【００１６】
従って、請求項１記載の情報処理装置によれば、コマンド処理プログラムのうち解析プログラム部については第１の記憶手段に記憶させているため、その分、第２の記憶手段におけるコマンド処理プログラムが占める領域を低減でき、第２の記憶手段を他のプログラム等が有効に利用できるようになる。
【００１７】
なお、既にテーブル部にリストアップされているデバイス情報名に対応したデバイス情報以外に新たなデバイス情報を取得又は設定できるようにするには、解析プログラム部を変更する必要はなく、例えば、その新たなデバイス情報を示すデバイス情報名とその所在情報との関連づけがなされた新たなテーブル部を、元のテーブル部に代えて第２の記憶手段に記憶させるようにすればよい。つまり、第２の記憶手段に記憶されているテーブル部を書き換えるのである。このようにすれば、その新たに取得又は設定できるようになったデバイス情報を対象としたコマンドが入力された場合、制御手段は、解析プログラム部を実行することにより新たなテーブル部に基づいてその新たなデバイス情報の所在情報を取得し、その所在情報をもとに要求対象のデバイス情報へアクセスすることになる。
【００１８】
上記構成の情報処理装置は、例えば請求項２に記載のように、解析プログラム部が、要求対象のデバイス情報に対応したデバイス情報名がテーブル部にリストアップされているか否かを判断するよう構成されており、コマンド処理プログラムは、要求対象のデバイス情報に対応したデバイス情報名と関連づけられている所在情報に基づいて、そのデバイス情報についてコマンドの内容に応じた処理を実行するための実行プログラム部を有し、制御手段は、解析プログラム部を実行することにより、要求対象のデバイス情報に対応したデバイス情報名がテーブル部にリストアップされていると判断した場合、その要求対象のデバイス情報に対して実行プログラム部を実行するものとして構成してもよい。
【００１９】
つまり、コマンド処理プログラムは、解析プログラム部及びテーブル部のほかに実行プログラム部を有しており、制御手段は、解析プログラム部に基づいて要求対象のデバイス情報の所在情報を取得したとき、実行プログラム部に基づいて、そのデバイス情報に対するコマンド内容に応じた処理を実行するのである。
【００２０】
従って、請求項２記載の情報処理装置によれば、解析プログラム部と実行プログラム部を制御手段が実行することで、要求されたコマンドを確実に処理することができる。
そして、このようにコマンド処理プログラムが実行プログラム部を有している場合、その実行プログラム部は、例えば請求項３に記載のように、第１の記憶手段に記憶されるようにするとよい。
【００２１】
このようにすれば、書き換え可能な第２の記憶手段におけるコマンド処理プログラムが占める領域をさらに低減でき、第２の記憶手段を他のプログラム等がより有効に利用できるようになる。
【００２２】
一方、コマンド処理プログラムが実行プログラム部を有している場合であって、その実行プログラム部が、コマンドによる要求対象のデバイス情報が予め決められた特定デバイス情報であった場合に、コマンドの内容に応じた処理に加え、その特定デバイス情報に対して予め設定された特定処理を行うよう構成されている場合は、例えば請求項４に記載のように、実行プログラム部のうち少なくとも上記特定処理を行うための部分は、第２の記憶手段に記憶されるようにするとよい。
【００２３】
このように構成された情報処理装置によれば、少なくとも解析プログラム部が第１の記憶手段に記憶されている分、他のプログラム等による第２の記憶手段の有効利用を実現しつつ、特定処理の内容については、フレキシブルに対応（追加・変更・削除等）することが可能となり、第２の記憶手段の有効利用とプログラム変更のフレキシブル性とを兼ね添えた情報処理装置の提供が可能となる。
【００２４】
そしてこのように特定処理を行うための部分が第２の記憶手段に記憶されている場合、例えば請求項５に記載のように、その他の部分（実行プログラム部のうち上記特定処理を行うための部分以外の部分）は第１の記憶手段に記憶されるようにするとよい。
【００２５】
このようにすれば、コマンド処理プログラムのうち、解析プログラム部と、実行プログラム部における特定処理を行うための部分以外の部分については、第１の記憶手段に記憶されることとなるため、第２の記憶手段をより有効に利用できるようになる。
【００２６】
ここで、請求項１〜５いずれかに記載の情報処理装置は、例えば請求項６に記載のように、デバイス情報が格納されたデバイス情報格納手段を備え、テーブル部においてデバイス情報名と関連づけられている所在情報は、上記デバイス情報格納手段におけるデバイス情報の所在を示すものであり、制御手段は、コマンド処理プログラムに従って、テーブル部において関連づけられている所在情報に基づいてデバイス情報格納手段へアクセスすることにより、コマンドの内容に応じた処理を行うように構成することができる。
【００２７】
このように構成された情報処理装置によれば、制御手段は、コマンド処理プログラムを実行することで、テーブル部の所在情報に基づいてデバイス情報格納手段に格納されたデバイス情報へ確実にアクセスでき、所望の（コマンドによる要求対象の）デバイス情報を確実に取得又は設定することができる。
【００２８】
ところで、テーブル部においてはじめからリストアップされているデバイス情報名に対応したデバイス情報だけでなく、場合によっては、他のデバイス情報についても取得又は設定できるようにする必要が生じることも考えられる。
【００２９】
その場合は、例えば請求項７に記載のように、コマンドによる要求に対応可能なデバイス情報を新たに追加すべき旨の追加指令に従って、その追加指令対象のデバイス情報を示すデバイス情報名とそのデバイス情報の所在を示す所在情報とを関連づけた追加テーブルを生成する対応情報追加手段を備えるようにし、解析プログラム部は、要求対象のデバイス情報の所在情報を、テーブル部及び追加テーブルに基づいて取得するように構成するとよい。
【００３０】
つまり、コマンドによる要求に対応可能なデバイス情報を新規追加する際は、対応情報追加手段が追加テーブルを生成することにより行うのである。そして、その新たに追加したデバイス情報に対するコマンドが入力されたときは、制御手段が解析プログラム部を実行することで、追加テーブルに基づいてその要求されたデバイス情報の所在情報を取得でき、ひいてはそのデバイス情報へアクセスすることができる。
【００３１】
従って、上記構成の情報処理装置によれば、新たに取得又は設定したい（或いはする必要がある）デバイス情報がある場合、そのデバイス情報を示すデバイス情報名とその所在情報とを関連づけて追加テーブルに登録するだけでよいため、取得又は設定可能なデバイス情報を容易に追加することが可能となる。
【００３２】
そしてこの場合も、例えば請求項８に記載のように、デバイス情報が格納されたデバイス情報格納手段を備え、テーブル部及び追加テーブルにおいてデバイス情報名と関連づけられている所在情報は、デバイス情報格納手段における所在を示すものであり、制御手段は、コマンド処理プログラムに従って、テーブル部又は追加テーブル部において関連づけられている所在情報に基づいてデバイス情報格納手段へアクセスすることにより、コマンドの内容に応じた処理を行うように構成することができる。
【００３３】
このように構成された情報処理装置によれば、制御手段は、コマンド処理プログラムを実行することで、テーブル部及び追加テーブル部の所在情報に基づいてデバイス情報格納手段に格納されたデバイス情報へ確実にアクセスでき、所望のデバイス情報を確実に取得又は設定することができる。
【００３４】
また、上記のように情報処理装置が対応情報追加手段を備える場合は、例えば請求項９に記載のように、追加テーブルが格納される追加テーブル格納手段を備え、対応情報追加手段による追加テーブルの生成は、追加テーブルを追加テーブル格納手段へ格納することにより行われるようにするとよい。
【００３５】
このように、追加テーブルを追加テーブル格納手段に格納することで、対応情報追加手段は追加テーブルを確実に生成することができる。また、その生成した追加テーブルは追加テーブル格納手段にて確実に保持されることとなる。
【００３６】
また、上記のように情報処理装置が対応情報追加手段を備える場合は、例えば請求項１０記載のように、追加指令には、追加すべきデバイス情報に対応したデバイス情報名及び所在情報が含まれており、対応情報追加手段は、追加指令に含まれているデバイス情報と所在情報に基づいて追加テーブルを生成するよう構成されたものであるとよい。
【００３７】
このように構成された情報処理装置によれば、追加指令として送られてくるデバイス情報名と所在情報とを関連づけて追加テーブルを生成するだけでよいため、追加テーブルを容易に生成することができる。
【００３８】
ここで、対応情報追加手段は、例えば別途ハードウェアにより実現することができるなど、種々の方法により実現可能であるが、例えば請求項１１に記載のように、コンピュータを対応情報追加手段として機能させるための対応情報追加プログラムを有し、その対応情報追加プログラムを制御手段が実行することにより、対応情報追加手段としての機能が実現されるようにしてもよい。
【００３９】
そして、上記のように制御手段が対応情報追加プログラムを実行することにより対応情報追加手段としての機能が実現されるよう構成された情報処理装置においては、例えば請求項１２に記載のように、対応情報追加プログラムが、コマンド処理プログラムの一部として組み込まれ、第１の記憶手段に記憶されたものであるとよい。
【００４０】
このように、対応情報追加プログラムも第１の記憶手段に記憶されることで、第２の記憶手段の空き容量を圧迫することなく、取得又は設定可能な新たなデバイス情報を容易に追加することが可能となる。
【００４１】
そして、上記各請求項１〜１２いずれかに記載の情報処理装置は、例えば請求項１３に記載のように、外部機器との間でデータの送受信が可能であって、その外部機器からコマンドが入力されるよう構成されていてもよい。つまり、外部機器からコマンドが入力されたとき、制御手段がコマンド処理プログラムを実行してその入力されたコマンドに対する各種処理を行うのである。
【００４２】
このように構成された情報処理装置によれば、情報処理装置に関する情報であるデバイス情報を外部機器が取得することができ、外部機器からコマンドを送信することで情報処理装置のデバイス情報を設定することができるようになる。
【００４３】
また、請求項７〜１２いずれかに記載のような、対応情報追加手段を備える情報処理装置においては、例えば請求項１４に記載のように、外部機器との間でデータの送受信が可能であって、外部機器からコマンド及び追加指令が入力されるよう構成されていてもよい。
【００４４】
このように構成された情報処理装置によれば、デバイス情報の取得又は設定を外部機器から行うことができるようになる。加えて、外部機器からの指示（追加指令）によって、取得又は設定可能なデバイス情報を新たに追加することができるようになる。
【００４５】
ところで、上述した各情報処理装置としては、例えば、コピー機能を備えた装置、イメージスキャナ機能を備えた装置、或いはファクシミリ機能を備えた装置など、多種多様の装置が考えられるが、例えば請求項１５のように画像形成機能を備えた装置であってもよい。即ち、入力される印刷データに基づいて被記録媒体へ画像を形成する画像形成手段を備えたものであって、コマンドによる要求に対応可能なデバイス情報として、画像形成手段の動作に関わる情報を含むようにすることができる。
【００４６】
このように構成された情報処理装置によれば、画像形成手段の動作に関する各種情報を取得又は設定することができ、画像形成手段による機能を効果的に利用できる。
また、第１の記憶手段および第２の記憶手段の具体例としては、種種の態様が考えられるが、例えば請求項１６に記載のように、第１の記憶手段はマスクＲＯＭであり、第２の記憶手段はフラッシュＲＯＭであるとよい。
【００４７】
このようにすることで、コマンド処理プログラムのうちマスクＲＯＭに記憶される部分については電源の有無等にかかわらず確実に記憶させることができる。また、コマンド処理プログラムのうちフラッシュＲＯＭに記憶される部分については、電源の有無等にかかわらず記憶内容を保持しつつ必要に応じてその記憶内容を書き換えることができる。加えて、フラッシュＲＯＭは、書き換え可能なＲＯＭの中でも比較的容量が大きく安価であるため、情報処理装置全体のコストダウンにも寄与することができる。
【００４８】
次に、請求項１７に記載の発明は、コンピュータを、請求項７〜１０いずれかに記載の情報処理装置における対応情報追加手段として機能させるための、対応情報追加プログラムである。
【００４９】
尚、コンピュータを対応情報追加手段として機能させるための対応情報追加プログラムは、例えば、ＲＯＭやバックアップＲＡＭに記憶させておいてこのＲＯＭあるいはバックアップＲＡＭをコンピュータに組み込んで用いることができる。この他、例えば、フロッピー（登録商標）ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ハードディスク等のコンピュータ読み取り可能な記録媒体に記録し、必要に応じてコンピュータにロードして起動することにより用いるようにすることもできる。
【発明を実施するための最良の形態】
【００５０】
以下に、本発明の好適な実施形態を図面に基づいて説明する。
［第１実施形態］
図１は、本実施形態の印刷システム１の概略構成を示すブロック図である。図１に示す如く、本実施形態の印刷システム１は、複合機１０とホストコンピュータ（以下単に「ホスト」という）５０とが通信ケーブル２を介して相互にデータ送受信可能に接続されている。
【００５１】
複合機１０は、本発明の情報処理装置に相当するものであり、電話回線網６０を介して音声通話を実現する電話機能、電話回線網６０を介して画像の送受信を行うファクシミリ機能、用紙の画像を画像データとして読み取るスキャナ機能、画像データで示される画像を用紙に印刷するプリンタ機能などを有している。
【００５２】
そして、この複合機１０では、ＣＰＵ１２、マスクＲＯＭ１４、フラッシュＲＯＭ１６、ＥＥＰＲＯＭ１８、ＲＡＭ２０、プリンタ部２２、スキャナ部２４、ユーザインターフェイス２６、メディアドライブ２８、ホストインターフェイス３０、モデム３２、回線制御部３４などが、バス３８を介して接続されており、更に、上記回線制御部３４には、ハンドセット３６が接続されている。
【００５３】
ＣＰＵ１２は、本発明の制御手段に相当するものであり、マスクＲＯＭ１４やフラッシュＲＯＭ１６に記憶されている各種プログラム・データ等に従い、処理結果をＲＡＭ２０に記憶させながら、複合機１０の各構成要素にバス３８経由で指令を送ることによって、複合機１０全体の動作を制御する。
【００５４】
マスクＲＯＭ１４は、記憶内容の書き換えが不可能な周知のＲＯＭであり、後述するコマンド・オプション認識プログラムの他、当該複合機１０を起動させるブートプログラムや、プリンタ機能において用いられるフォントデータなどが記憶されている。
【００５５】
フラッシュＲＯＭ１６は、記憶内容の書き換えが可能な周知のＲＯＭであり、後述するオプション辞書の他、ホスト５０からの印刷データを解析するためのプログラムや、上述した各種機能を実現するための各種プログラムやデータ等が記憶されている。
【００５６】
ＥＥＰＲＯＭ１８も、記憶内容の書き換えが可能な周知の不揮発性メモリであり、ＣＰＵ１２が各種処理を実行する際に必要な制御パラメータが記憶されているほか、ユーザ入力にて登録される電話番号・ファクシミリ番号などの各種情報も記憶される。さらに、当該複合機１０の動作状態や各種設定内容を示す情報（後述するオプションバリュー）も記憶されており、後述するように、ホスト５０からの要求に従ってこれら情報がホスト５０側へ返答されたり、ホスト５０からの要求に従って設定内容が更新される。
【００５７】
ＲＡＭ２０は、電源が供給されている間にのみ記憶内容を保持可能な周知の揮発性メモリであり、ＣＰＵ１２が各種処理を実行する際のワークエリアとして利用される他、当該複合機１０の起動時にＥＥＰＲＯＭ１８に記憶された上記オプションバリューがコピーされる。そして、複合機１０の動作中は、基本的にはこのＲＡＭ２０にコピーされたオプションバリューに従って動作することとなる。
【００５８】
プリンタ部２２は、本発明の画像形成手段に相当するものであり、ＣＰＵ１２からの指令を受けて、図示しない給紙部にセットされた用紙への画像の印刷（即ち被記録媒体への画像形成）を行う。
【００５９】
スキャナ部２４は、ＣＰＵ１２からの指令を受けて、図示しない読取部にセットされた用紙からその用紙上の画像を読み取ると共に、その読み取った画像のイメージデータを生成する。
【００６０】
なお、本複合機１０は、スキャナ部２４で読み取った画像をプリンタ部２２にて印刷する、いわゆるコピー機能も備えている。
ユーザインターフェイス２６は、文字や数字、記号などを入力可能な複数の操作ボタンなどからなる操作パネル４２と、ＣＰＵ１２からの指令を受けて各種情報を表示する表示パネル（ＬＣＤパネル）４４と、スピーカ及びこのスピーカを駆動する駆動回路からなるスピーカ部４６とを備えている。
【００６１】
ホストインターフェイス３０は、当該複合機１０を通信ケーブル経由で別のコンピュータシステムと接続するためのインターフェイスであり、本実施形態では、既述の通り、複合機１０とホスト５０とが通信ケーブル２を介して相互に接続されている。
【００６２】
モデム３２は、ＣＰＵ１２からの指令を受けて、スキャナ部２４で生成されたイメージデータを変調して電話回線網６０を伝送可能な画像信号を生成すると共に、電話回線網６０から回線制御部３４を介して入力された画像信号を復調してイメージデータを生成する。なお、ハンドセット３６は、複合機１０本体から取り外して使用する送受話器である。
【００６３】
回線制御部３４は、電話回線網６０からの各種信号の入力および電話回線網６０への信号の出力を行うと共に、ＣＰＵ１２の指令を受けて、電話回線網６０との間で入出力する信号の伝送先および伝送元となる伝送経路を設定する。
【００６４】
メディアドライブ２８は、各種メモリカード２９を着脱可能であり、装着されたメモリカード２９へのデータの記録および読み出しを行う装置である。なお、ここでいう「メモリカード」とは、例えば、コンパクトフラッシュ（登録商標。以下同様。以下「CF」と略す）、スマートメディア(登録商標）、メモリスティック（登録商標）、マルチメディアカード、ＳＤメモリカードなどのことである。
【００６５】
ホスト５０は、本発明の外部機器に相当するものであり、図示は省略したものの、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、キーボード、マウス、ディスプレイなどにより構成された周知のコンピュータシステムである。そして、このホスト５０が備えるハードディスクには、各種アプリケーションソフトの他、複合機１０におけるスキャナ機能を利用するためのスキャナ用プログラム、プリンタ機能を利用するためのプリンタドライバなどが組み込まれているほか、必要に応じて後述するＰＪＬコマンドを生成し、複合機１０へ送信するためのプログラムも組み込まれている。ホスト５０は、このＰＪＬコマンドを複合機１０へ送信することにより、複合機１０における各種情報（既述のオプションバリュー）の取得や設定を要求することができる。
【００６６】
そして、本実施形態の複合機１０は、プリンタジョブ言語（ＰＪＬ）に対応したものであり、当該複合機１０には、ホスト５０側から送信されたＰＪＬコマンドを解釈してそのコマンドに応じた処理（要求された情報の取得又は設定など）を行うためのＰＪＬ処理プログラムが、マスクＲＯＭ１４とフラッシュＲＯＭ１６とに分割されて格納されている。図２に、マスクＲＯＭ１４、フラッシュＲＯＭ１６、ＥＥＰＲＯＭ１８、及びＲＡＭ２０における、ＰＪＬ処理に関わるプログラム・データの格納状態を示す。
【００６７】
図２に示す如く、本実施形態では、ホスト５０から送信されてくるＰＪＬコマンドに対応するためのＰＪＬ処理プログラム７０が、主として、コマンド・オプション認識プログラム７２と、オプション実行プログラム７４と、オプション辞書７６とにより構成されている。このうち、コマンド・オプション認識プログラム７２とオプション実行プログラム７４はマスクＲＯＭ１４に格納され、オプション辞書７６はフラッシュＲＯＭに格納されている。つまり、ＰＪＬ処理プログラム７０が、マスクＲＯＭ１４とフラッシュＲＯＭ１６とに分割されて格納されているのである。
【００６８】
このうち、コマンド・オプション認識プログラム７２は、ホスト５０側からのＰＪＬコマンドを認識してどのような要求がなされているか、どのような処理をすべきかを解析するためのものである。また、このコマンド・オプション認識プログラム７２は、ＰＪＬコマンドによる要求対象の情報がオプション辞書７６にリストアップされているか否かを判断する処理、更には、リストアップされている場合にその情報がＥＥＰＲＯＭ１８のどこに格納されているかの所在情報をオプション辞書７６に基づいて取得する処理などを行うためのプログラムでもある。
【００６９】
なお、本実施形態の複合機１０が認識できるコマンドは、図３（ａ）に示すようなコマンドリストとしてマスクＲＯＭ１４に記憶されている。各コマンドの詳細については後述する。
【００７０】
ＰＪＬ処理プログラム７０のうち、オプション辞書７６は、ＰＪＬコマンドによる要求に対応可能な情報の種類を示す情報名が、対応する情報の所在を示す所在情報などと関連づけられてリストアップされたテーブルである。尚、情報名とそれに対応する情報（オプション）の取りうる値の範囲とが関連づけられてリストアップされる場合もある。
【００７１】
具体的には、図３（ｂ）に示すように、情報名としてのオプション名と、その情報に対応したＥＥＰＲＯＭ１８のＩＤ（ＥＥＰＲＯＭ＿ＩＤ）とが関連づけられてリストアップされている。例えば、コピー機能におけるコピー枚数を示すオプション名“ＣＯＰＩＥＳ”と、そのオプションの実際の設定値（オプションバリュー）であるコピー枚数の設定値が格納されたＥＥＰＲＯＭ＿ＩＤである“ＮＶ＿ＣＯＰＩＥＳ＿ＩＤ”とが関連づけられており、また例えば、プリンタ機能における印刷用紙サイズを示すオプション名“ＰＡＰＥＲ”と、そのオプションバリューである印刷用紙サイズの設定値が格納されたＥＥＰＲＯＭ＿ＩＤである“ＮＶ＿ＰＡＰＥＲ＿ＩＤ”とが関連づけられている。更に、図示は省略したものの、ＥＥＰＲＯＭ＿ＩＤには、それぞれ、ＥＥＰＲＯＭ１８において対応する情報が格納されている番地（アドレス）も対応づけられている。
【００７２】
尚、図３（ｂ）に示したオプション名のうち、“ＬＡＮＧ”は、当該複合機１０のプリンタ機能がサポートしている言語切り替えのための情報であり、“ＸＯＦＦＳＥＴ”は、プリンタ機能における印刷位置（ここではＸ方向の印刷開始位置）を調整するための情報であり、“ＴＩＭＥＯＵＴ”は、ホスト側からホストインターフェイス３０に一定期間データが入力されなかった場合のタイムアウト値に関する情報である。これらはいずれもＥＥＰＲＯＭ＿ＩＤ（“ＮＶ＿「オプション名」＿ＩＤ”）と関連づけられてリストアップされている。
【００７３】
また、図３（ｂ）に直接示したオプション名以外にも、例えば、後述する図５で説明するオプション名である“ＴＯＴＡＬＰＡＧＥ”、“ＲＥＳＯＬＵＴＩＯＮ”、“ＭＥＤＩＡＴＹＰＥ”なども、オプション辞書７６にリストアップされている。
【００７４】
ＰＪＬ処理プログラム７０のうち、オプション実行プログラム７４は、ＰＪＬコマンドにより要求されている情報につき、その情報に対してオプション辞書７６にリストアップされている内容（ＥＥＰＲＯＭ＿ＩＤやアドレスなど）を元に、その情報へアクセスし、情報（オプションバリュー）の取得あるいは設定などのコマンドに応じた処理を実際に行うためのプログラムである。
【００７５】
ＥＥＰＲＯＭ１８には、当該複合機１０の動作状態や各種設定内容を示す情報（オプションバリュー）が、オプション関連情報８０として格納されている。具体的には、図４に示すように、ＥＥＰＲＯＭ１８の管理領域における所定の領域に、当該複合機１０の動作状態や各種設定内容を示すオプションバリューが、対応するＥＥＰＲＯＭ＿ＩＤとともにそれぞれ所定のアドレスに格納されている。なお、このオプション関連情報８０は、当該複合機１０の起動時にＲＡＭ２０にもコピーされ、デフォルト値はあくまでもＥＥＰＲＯＭ１８内のオプション関連情報８０であるものの、基本的にはこのＲＡＭ２０のオプション関連情報８１を元に複合機１０の動作が行われる。
【００７６】
次に、ホスト５０側から送信されてくるＰＪＬコマンドの具体例（文字列）と、そのＰＪＬコマンドを複合機１０が受信したときに複合機１０からホスト側へ返答される（あるいは複合機１０内で処理される）データの例を、図５に示す。ホスト５０は、ＰＪＬコマンドを作成する際、“＠ＰＪＬ  「コマンド名」  「オプション名」  （「オプションバリュー」）”という形式でＰＪＬコマンドを作成することになる。
【００７７】
まず図５（ａ）は、ホスト５０側が複合機１０におけるページカウンタを取得するために複合機１０へ送信するデータと、その送信データに対する複合機１０からの返答データの一例を示すものである。ホスト５０からの送信データにおいて、１行目の“＜ＥＳＣ＞％−１２３４５Ｘ”で表されるＵＥＬ（Universal Exit Language ）により、ＰＪＬコマンドが送信されることを複合機１０側に認識させ、これにより複合機１０を、ＰＪＬコマンドを処理可能な状態（ＰＪＬコマンドモード）にさせる。そして、２行目及び３行目の文字列が、ＰＪＬコマンドである。２行目のＰＪＬコマンドにおけるコマンド“ＤＩＮＱＵＩＲＥ”は、複合機１０側でデフォルト設定されているデータ、つまりＥＥＰＲＯＭ１８に格納されているオプションバリューそのものを取得するためのものであり、オプション名“ＴＯＴＡＬＰＡＧＥ”は、要求対象の情報であるページカウンタを示すものである。
【００７８】
３行目のＰＪＬコマンドにおけるコマンド“ＩＮＱＵＩＲＥ”は、デフォルトではなく現在のジョブに対して設定されているデータ、つまりＲＡＭ２０に格納されている情報（変数）を取得するためのコマンドである。
【００７９】
そのため、仮に、ＥＥＰＲＯＭ１８に格納されているページカウンタ値とＲＡＭ２０に格納されているページカウンタ値がいずれも例えば「５００」の場合に、上記ＰＪＬコマンドが複合機１０へ送信されると、複合機１０では、ＰＪＬコマンド中のコマンドが認識されると共にオプション名“ＴＯＴＡＬＰＡＧＥ”も認識され、このオプション名が辞書テーブル７６内にリストアップされているか否かがサーチされる。そして、リストアップされていれば、そのオプション名に関連づけられているＥＥＰＲＯＭ＿ＩＤ（この例では“ＮＶ＿ＴＯＴＡＬＰＡＧＥ＿ＩＤ”）を利用して、ＥＥＰＲＯＭ１８におけるページカウンタ値へアクセスすることとなる。但し、コマンド“ＩＮＱＵＩＲＥ”に対しては、ＥＥＰＲＯＭ１８にはアクセスせず、ＲＡＭ２０に格納されているページカウンタ値へアクセスすることになるが、ＲＡＭ２０へのアクセスの詳細についてはここでは省略する。
【００８０】
そして、要求されたデータが取得されると、複合機１０からのリードバックとして、同図（ａ）に示す返答データがホスト５０側へ返答される。この返答データにおける１〜２行目の“＠ＰＪＬ  ＤＩＮＱＵＩＲＥ  ＴＯＴＡＬＰＡＧＥ<CR><LF>５００<CR><LF>”のうち、前半部分は送信したＰＪＬコマンドそのものであり、その後ろの“<CR><LF>”に続く“５００”が、“ＴＯＴＡＬＰＡＧＥ”について複合機１０内のＥＥＰＲＯＭ１８で管理されていたオプションバリュー（この場合は、ページカウンタ）である。
【００８１】
また、返答データのうち３〜４行目の“＠ＰＪＬ  ＩＮＱＵＩＲＥ  ＴＯＴＡＬＰＡＧＥ<CR><LF>５００<CR><LF>”についても、前半部分は送信したＰＪＬコマンドそのものであり、その後ろの“<CR><LF>”に続く“５００”が、“ＴＯＴＡＬＰＡＧＥ”について複合機１０内のＲＡＭ２０に格納されていたページカウンタ値である。
【００８２】
この返答データを受信することによって、ホスト側では、複合機１０におけるページカウンタが「５００」であることを取得することができる。なお、ホスト５０側からの送信データにおける最終行の“＜ＥＳＣ＞％−１２３４５Ｘ”で表されるＵＥＬは、ＰＪＬコマンドの終了を示すものであり、これを受けて複合機１０側ではＰＪＬコマンドモードが解除される。
【００８３】
なお、ＥＥＰＲＯＭ１８に格納されているページカウンタ値とＲＡＭ２０に格納されているページカウンタ値が異なる場合は、当然ながら、それぞれ対応したページカウンタ値が返答データとして複合機１０から返答されることになる。
【００８４】
また、図５（ｂ）は、ホスト５０側が複合機１０における“ＲＥＳＯＬＵＴＩＯＮ”、即ち解像度を設定変更するために複合機１０へ送信するデータと、その送信データに対する複合機１０側の処理内容を示すものである。ホスト５０からの送信データにおける２行目のＰＪＬコマンドにおけるコマンド“ＳＥＴ”は、複合機１０側においてデフォルトで設定（つまりＥＥＰＲＯＭ１８に格納）されているデータではなく、現在のジョブに対して設定されているデータ、つまりＲＡＭ２０に格納されている情報を設定するためのコマンドである。そして、このＰＪＬコマンドの後半部分にある数値“６００”は、具体的な解像度を表している。
【００８５】
このような送信データ（ＰＪＬコマンド）が複合機１０へ送信されると、複合機１０では、ＰＪＬコマンド中のコマンドが認識されると共にオプション名“ＲＥＳＯＬＵＴＩＯＮ”も認識され、このオプション名が辞書テーブル７６内にリストアップされているか否かがサーチされる。そして、リストアップされていれば、ＲＡＭ２０において対応する情報（ここでは解像度）が格納されている場所へアクセスされる。このアクセスの詳細についてはここでは省略する。そして、ＲＡＭ２０に設定されている、現在のジョブに対する解像度情報が「６００」に変更されることとなる。このように、“ＳＥＴ”は、後述するコマンド“ＤＥＦＡＵＬＴ”とは異なり、ＥＥＰＲＯＭ１８においてデフォルトで設定されているオプションバリュー（ここでは解像度）自体を変更するためのものではない。
【００８６】
また、図５（ｃ）は、ホスト５０側が複合機１０における用紙タイプの設定を変更するために複合機１０へ送信するデータと、その送信データに対する複合機１０からの返答データの一例を示すものである。ホスト５０からの送信データにおける２行目の文字列“＠ＰＪＬ  ＤＥＦＡＵＬＴ  ＭＥＤＩＡＴＹＰＥ＝ＰＬＡＩＮ<CR><LF>”のうち、コマンド“ＤＥＦＡＵＬＴ”は、複合機１０側においてデフォルトで設定（つまりＥＥＰＲＯＭ１８に格納）されているオプションバリューを設定するためのコマンドである。そして、このＰＪＬコマンドの後半部分にある文字列“ＰＬＡＩＮ”は、用紙の具体的なタイプ名を表している。
【００８７】
３行目のＰＪＬコマンドにおけるコマンド“ＤＩＮＱＵＩＲＥ”は、既に説明した通り、複合機１０側でデフォルト設定されているデータ、即ちＥＥＰＲＯＭ１８に格納されているオプションバリューそのものを取得するためのものである。つまり、この送信データは、複合機１０に対して用紙タイプの設定（変更）を要求すると共に、設定変更後の用紙タイプのデフォルト値を返答するように要求するものとなっている。
【００８８】
このような送信データ（ＰＪＬコマンド）が複合機１０へ送信されると、複合機１０では、まず、ＥＥＰＲＯＭ１８に格納されている用紙タイプに関するオプションバリューを“ＰＬＡＩＮ”に設定変更し、続いて、図５（ｃ）に示すように、デフォルト設定が“ＰＬＡＩＮ”となったことを示す返答データを、ホスト５０側へ送信する。
【００８９】
なお、本実施形態では、ＰＪＬコマンドに対応可能な情報（オプション）を追加したい場合は、オプション辞書７６を修正することで対応できる。具体的には、例えばコピー機能におけるコピーカウンタについての情報を取得できるようにしたい場合は、そのコピーカウンタを示すオプション名“ＣＯＰＹＣＯＵＮＴ”と、そのコピーカウンタが格納されたＥＥＰＲＯＭ１８におけるＥＥＰＲＯＭ＿ＩＤ、アドレスなどが関連づけられた新たなオプション辞書を作成し、フラッシュＲＯＭ１６内にあるオプション辞書７６をその新たに作成したオプション辞書に書き換えればよい。つまり、ＰＪＬ処理プログラム７０全体のうち、マスクＲＯＭ１４に格納されたプログラムはそのままでよく、新たに追加したいオプションがあればその都度新規にプログラム（オプション辞書）を作成してフラッシュＲＯＭ１６の内容（オプション辞書７６）のみを書き換えることで、新規オプションの追加に対応できるのである。
【００９０】
それ故、本実施形態では、従来のようにＰＪＬ処理プログラム７０全体をフラッシュＲＯＭ１６に格納するのではなく、変更される可能性がほとんどない普遍的なプログラム部分であるコマンド・オプション認識プログラム７２とオプション実行プログラム７４はマスクＲＯＭ１４に格納し、変更される可能性のあるプログラム部分であるオプション辞書７６をフラッシュＲＯＭ１６に格納するようにしている。
【００９１】
次に、本実施形態の複合機１０がホスト５０側からＰＪＬコマンドを受信したときに、複合機１０において実行されるＰＪＬ受信処理について、図６に基づいて説明する。図６  は、ＣＰＵ１２にて実行されるＰＪＬ受信処理を表すフローチャートである。複合機１０  では、ＣＰＵ１２がマスクＲＯＭ１４及びフラッシュＲＯＭ１６からＰＪＬ処理プログラム７０を読み出し、このプログラムに従ってＰＪＬ受信処理を実行する。
【００９２】
この処理が開始され、ＰＪＬコマンドが受信されると（Ｓ１１０）、ＰＪＬ処理プログラム７０のうちマスクＲＯＭ１４に格納されたコマンド・オプション認識プログラム７２に従い、受信したＰＪＬコマンドにつき、どのような情報に対してどのような処理をすべきなのかが認識され（Ｓ１２０）、そのコマンドの内容が複合機１０内の情報（データ）を設定するためのものか、或いは複合機１０内の情報を取得するためのものかが判断される（Ｓ１３０）。
【００９３】
そして、例えば“ＳＥＴ”や“ＤＥＦＡＵＬＴ”のように情報を設定するためのコマンドならば、Ｓ１４０に進み、要求されているオプション、即ちＰＪＬコマンドに含まれるオプション名がオプション辞書７６にリストアップされているか否かが判断される。このとき、リストアップされていなければそのままこの処理を終了するが、リストアップされていれば、ＰＪＬ処理プログラム７０のうちマスクＲＯＭ１４に格納されたオプション実行プログラム７４に従い、そのオプション名と関連づけられているＥＥＰＲＯＭ＿ＩＤを利用して、ＰＪＬコマンドに含まれているオプションバリューがＥＥＰＲＯＭ１８へ書き込まれる（Ｓ１５０）。尚、上述したように、ＥＥＰＲＯＭ１８へ書き込まれるのはコマンドが“ＤＥＦＡＵＬＴ”の場合であって、“ＳＥＴ”の場合はＲＡＭ２０に書き込まれる。
【００９４】
一方、コマンドの内容が例えば“ＩＮＱＵＩＲＥ”や“ＤＩＮＱＵＩＲＥ”などのように情報を取得するためのコマンドならば、Ｓ１３０からＳ１６０へ進み、ＰＪＬコマンドに含まれるオプション名がオプション辞書７６にリストアップされているか否が判断される。このとき、リストアップされていなければそのままこの処理を終了するが、リストアップされていれば、オプション実行プログラム７４に従い、そのオプション名と関連づけられているＥＥＰＲＯＭ＿ＩＤを利用して、ＥＥＰＲＯＭ１８から要求対象の情報（オプションバリュー）が読み出される（Ｓ１７０）。そして、その読み出されたオプションバリューがホスト５０側へ返答される（Ｓ１８０）。尚、上述したように、ＥＥＰＲＯＭ１８から情報が読み出されるのはコマンドが“ＤＩＮＱＵＩＲＥ”の場合であって、“ＩＮＱＵＩＲＥ”の場合はＲＡＭ２０に格納された情報が読み出される。
【００９５】
以上詳述した本実施形態の複合機１０によれば、従来のようにＰＪＬ処理プログラム７０全体をフラッシュＲＯＭ１６に格納するのではなく、ＰＪＬ処理プログラム７０のうち、変更される可能性のほとんどない普遍的なプログラム部分であるコマンド・オプション認識プログラム７２とオプション実行プログラム７４はマスクＲＯＭ１４に格納するようにしているため、その分、フラッシュＲＯＭ１６におけるＰＪＬ処理プログラム７０が占める領域を低減でき、フラッシュＲＯＭ１６を他のプログラム等が有効に利用できるようになる。
【００９６】
ここで、本実施形態の構成要素と本発明の構成要素の対応関係を明らかにする。本実施形態において、ＰＪＬ処理プログラム７０は本発明のコマンド処理プログラムに相当し、コマンド・オプション認識プログラム７２は本発明の解析プログラム部に相当し、オプション実行プログラム７４は本発明の実行プログラム部に相当し、オプション辞書７６は本発明のテーブル部に相当し、ＥＥＰＲＯＭ１８は本発明のデバイス情報格納手段に相当し、オプションは本発明のデバイス情報に相当し、オプション名は本発明のデバイス情報名に相当し、ＥＥＰＲＯＭ＿ＩＤは本発明の所在情報に相当する。
【００９７】
また、図６のＰＪＬ受信処理において、Ｓ１２０，Ｓ１３０，Ｓ１４０，Ｓ１６０の各処理はいずれも、コマンド・オプション認識プログラム７２の処理であって本発明の解析プログラム部が実行する処理に相当し、Ｓ１５０，Ｓ１７０，Ｓ１８０の各処理はいずれも、オプション実行プログラム７４の処理であって本発明の実行プログラム部が実行する処理に相当する。
【００９８】
［第２実施形態］
上記第１実施形態では、ＰＪＬコマンドにより取得又は設定等ができる情報（オプション）を新たに追加したい場合、その都度新規にプログラムを作成（新たなオプション辞書を作成）してフラッシュＲＯＭ１６内のオプション辞書７６を書き換える必要があった。そこで本実施形態では、フラッシュＲＯＭ１６内のオプション辞書７６を書き換えることなく、取得又は設定等が可能な情報を新たに追加できるようにしている。
【００９９】
具体的には、取得又は設定等が可能な情報を追加するためのコマンドとして“ＡＤＤＰＪＬ”を予め用意しておく。そして、実際に追加する場合は、“＠ＰＪＬ  ＡＤＤＰＪＬ  「新たに追加したい情報名（オプション名）」  「ＥＥＰＲＯＭ＿ＩＤ」”というＰＪＬコマンドをホスト５０側から複合機１０へ送信するようにし、これを受けた複合機１０側では、ＰＪＬコマンド中のコマンド名“ＡＤＤＰＪＬ”により、オプションを追加すべき旨のコマンドであることを認識する。
【０１００】
その結果、“ＡＤＤＰＪＬ”の後の文字列に従い、新たに追加すべきオプションについてそのオプション名とＥＥＰＲＯＭ＿ＩＤを関連づけた辞書を生成する。この辞書は、図７に示すように、新規登録オプション辞書８９としてＲＡＭ２０に格納される。
【０１０１】
そして、この機能を実現すべく、本実施形態のＰＪＬ処理プログラム８５は、オプション追加用のコマンドである“ＡＤＤＰＪＬ”を認識でき、そのコマンドによる要求に応じてＲＡＭ２０に新規登録オプション辞書８９を作成できるよう構成されている。
【０１０２】
例えば、コピー機能におけるページカウンタに関する情報の取得又は設定等ができない状態（つまりオプション辞書８８に該当するオプション名がリストアップされていない状態）であったとする。そして、このページカウンタに関する情報を取得又は設定等できるように新たなオプションとして追加したい場合は、ホスト５０側から、“＠ＰＪＬ  ＡＤＤＰＪＬ  ＣＯＰＹＣＯＵＮＴ  ＮＶ＿ＣＯＰＹＣＯＵＮＴ＿ＩＤ”なるＰＪＬコマンドを送信すればよい。
【０１０３】
このＰＪＬコマンドを受けた複合機１０では、このＰＪＬコマンドが新規オプション追加用のコマンドであることが認識され、オプション名“ＣＯＰＹＣＯＵＮＴ”とそのＥＥＰＲＯＭ＿ＩＤである“ＮＶ＿ＣＯＰＹＣＯＵＮＴ＿ＩＤ”とを関連づけた新規登録オプション辞書８９がＲＡＭ２０に生成される。
【０１０４】
なお、オプション追加用のコマンドである“ＡＤＤＰＪＬ”を認識し、そのコマンドによる要求に応じてＲＡＭ２０に新規登録オプション辞書８９を作成するためのプログラムであるオプション追加プログラム（本発明の対応情報追加プログラム）は、ＰＪＬ処理プログラム８５の一部として組み込まれ、マスクＲＯＭ１４に格納されている。
【０１０５】
更に、本実施形態の複合機１０は、オプション辞書８８に登録されたオプションの一部につき、ＰＪＬコマンドに応じた処理に加えて、予め設定した処理（以下「特殊処理」という）も実行するよう構成されている。そして、そのような特殊処理については、処理内容が変更される可能性や、他のオプションについても特殊処理を行うように設定される可能性もある。
【０１０６】
そのため、本実施形態では、オプション実行プログラム８７をフラッシュＲＯＭ１６へ格納することにより、必要に応じて変更等できるようにしている。尚、特殊処理が実行されるオプション（以下「特殊処理対応オプション」という）がどれであるかは、オプション辞書８８において、対応するオプション名に対し、その旨を示す情報が関連づけられている。つまり、特殊処理対応オプションについては、オプション辞書８８において、オプション名と、そのＥＥＰＲＯＭ＿ＩＤと、特殊処理対応オプションである旨の情報とが関連づけられている。
【０１０７】
そして、例えば、ホスト５０側から用紙タイプを設定するための、“＠ＰＪＬ  ＤＥＦＡＵＬＴ  ＭＥＤＩＡＴＹＰＥ＝ＴＨＩＣＫ”なるＰＪＬコマンドが送信されてきた場合に、“ＭＥＤＩＡＴＹＰＥ”オプションが特殊処理対応オプションであって、特殊処理として、プリンタ部２２に対し、要求された用紙タイプ“ＭＥＤＩＡＴＹＰＥ”に応じた印刷処理が行えるように準備するよう指示する、という処理を実行するように設定されているならば、受信したＰＪＬコマンドに対し、“ＭＥＤＩＡＴＹＰＥ”オプションに対応するＥＥＰＲＯＭ＿ＩＤを用いてＥＥＰＲＯＭ１８への書き込み（設定）を行うほか、上述の特殊処理として、プリンタ部２２に対し、設定された用紙タイプ”ＴＨＩＣＫ”（厚手の紙）への印刷に対応するよう指示する。
【０１０８】
次に、本実施形態のＰＪＬ受信処理について、図８に基づいて説明する。図８  は、ＣＰＵ１２にて実行されるＰＪＬ受信処理を表すフローチャートである。
この処理が開始され、ＰＪＬコマンドが受信されると（Ｓ２１０）、ＰＪＬ処理プログラム８５のうちマスクＲＯＭ１４に格納されたコマンド・オプション認識プログラム８６に従い、受信したＰＪＬコマンドにつき、どのような情報に対してどのような処理をすべきなのかが認識される（Ｓ２２０）。更に、ＰＪＬ処理プログラム８５のうちマスクＲＯＭ１４に格納されたオプション追加プログラムに従い、そのコマンドがオプション追加のためのコマンドである“ＡＤＤＰＪＬ”であるか否かが判断される（Ｓ２３０）。
【０１０９】
そして、“ＡＤＤＰＪＬ”であればＳ３３０に進むが、“ＡＤＤＰＪＬ”以外の他のコマンドであれば、Ｓ２４０に進み、コマンド・オプション認識プログラム８６に従ってそのコマンドの内容が複合機１０内の情報（データ）を設定するためのものか、或いは複合機１０内の情報を取得するためのものかが判断される。
【０１１０】
そして、例えば“ＳＥＴ”や“ＤＥＦＡＵＬＴ”のように情報を設定するためのコマンドならば、Ｓ２５０に進み、ＰＪＬコマンドに含まれるオプションが、オプション辞書８８または新規登録オプション辞書８９にリストアップされているか否かが判断される。このとき、リストアップされていなければそのままこの処理を終了するが、リストアップされていれば、ＰＪＬ処理プログラム８５のうちフラッシュＲＯＭ１６に格納されたオプション実行プログラム８７に従い、そのオプション名と関連づけられているＥＥＰＲＯＭ＿ＩＤを利用して、ＰＪＬコマンドに含まれているオプションバリューがＥＥＰＲＯＭ１８へ書き込まれる（Ｓ２６０）。尚、上述したように、ＥＥＰＲＯＭ１８へ書き込まれるのはコマンドが“ＤＥＦＡＵＬＴ”の場合であって、“ＳＥＴ”の場合はＲＡＭ２０に書き込まれる。
【０１１１】
更に、リストアップされていた場合にはそのオプション名について特殊処理対応オプションであることを示す情報まで関連づけられているかどうかも判断されるようにし、特殊処理対応オプションでなければ（Ｓ２７０：ＮＯ）、そのままこの処理を終了するが、特殊処理対応オプションならば（Ｓ２７０：ＹＥＳ）、そのオプションに対応した特殊処理が実行される（Ｓ２８０）。
【０１１２】
一方、コマンドの内容が例えば“ＩＮＱＵＩＲＥ”や“ＤＩＮＱＵＩＲＥ”などのように情報を取得するためのコマンドならば、Ｓ２４０からＳ２９０へ進み、ＰＪＬコマンドに含まれるオプション名がオプション辞書８８又は新規登録オプション辞書８９にリストアップされているか否かが判断される。このとき、リストアップされていなければそのままこの処理を終了するが、リストアップされていれば、オプション実行プログラム８７に従い、そのオプション名と関連づけられているＥＥＰＲＯＭ＿ＩＤを利用して、ＥＥＰＲＯＭ１８から要求対象の情報（オプションバリュー）が読み出される（Ｓ３００）。尚、上述したように、ＥＥＰＲＯＭ１８から情報が読み出されるのはコマンドが“ＤＩＮＱＵＩＲＥ”の場合であって、“ＩＮＱＵＩＲＥ”の場合はＲＡＭ２０に格納された情報が読み出される。
【０１１３】
更に、リストアップされていた場合にはそのオプション名について特殊処理対応オプションであることを示す情報まで関連づけられているかどうかも判断されるようにし、特殊処理対応オプションでなければ（Ｓ３１０：ＮＯ）、Ｓ３００にて読み出されたオプションバリューをホスト５０側へ返答（Ｓ３２０）してこの処理を終了するが、特殊処理対応オプションならば（Ｓ３１０：ＹＥＳ）、そのオプションに対応した特殊処理が実行される（Ｓ２８０）。
【０１１４】
また、受信したコマンドがオプション追加のためのコマンドである“ＡＤＤＰＪＬ”であった場合は（Ｓ２３０：ＹＥＳ）、上述したオプション追加プログラムに従い、追加要求されているオプションに対応したＥＥＰＲＯＭ＿ＩＤがＥＥＰＲＯＭ１８内にあるか否かが判断され（Ｓ３３０）、そのＩＤがＥＥＰＲＯＭ１８内になければ（Ｓ３３０：ＮＯ）、そのままこの処理を終了し、ＥＥＰＲＯＭ１８内にあれば（Ｓ３３０：ＹＥＳ）、ＲＡＭ２０における新規登録オプション辞書８９に追加対象のオプション名とそのＥＥＰＲＯＭ＿ＩＤを登録する。
【０１１５】
以上詳述した本実施形態の複合機１０によれば、ＰＪＬ処理プログラム８５内のオプション追加プログラムにより、新たに取得又は設定したい（或いはする必要がある）情報がある場合、その情報を示すオプション名とその所在情報であるＥＥＰＲＯＭ＿ＩＤとを関連づけて新規登録オプション辞書８９に登録するだけでよいため、取得又は設定可能な情報を容易に追加することが可能となる。
【０１１６】
また、追加すべきオプション名とそのＥＥＰＲＯＭ＿ＩＤとが“ＡＤＤＰＪＬ”コマンドと共に送信されてくるため、複合機１０側では、その送信されてきたＰＪＬコマンドに含まれるオプション名とＥＥＰＲＯＭ＿ＩＤとを関連づけて新規登録オプション辞書８９に登録するだけでよいため、新規登録オプション辞書８９への登録を容易に行うことができる。
【０１１７】
更に、“ＡＤＤＰＪＬ”コマンドに対応するためのプログラムであるオプション追加プログラムもマスクＲＯＭ１４に格納されるため、フラッシュＲＯＭ１６の空き容量を圧迫することなく、取得又は設定可能な新たな情報を容易に追加することが可能となる。
【０１１８】
また更に、ＰＪＬ処理プログラム８５のうちコマンド・オプション認識プログラム８６がマスクＲＯＭ１４に記憶されている分、他のプログラム等によるフラッシュＲＯＭ１６の有効利用が実現されており、加えて、オプション実行プログラム８７をフラッシュＲＯＭ１６に格納することで特殊処理の内容についてはフレキシブルに対応（追加・変更・削除等）することが可能となり、フラッシュＲＯＭ１６の有効利用とオプション実行プログラムの変更のフレキシブル性とを兼ね添えた複合機１０の提供が可能となる。
【０１１９】
尚、本実施形態において、“ＡＤＤＰＪＬ”コマンドを含むＰＪＬコマンドが、本発明の追加指令に相当し、新規登録オプション辞書８９は本発明の追加テーブルに相当し、ＲＡＭ２０は本発明の追加テーブル格納手段に相当し、特殊処理は本発明の特定処理に相当し、特殊処理対応オプションに対応した情報（オプション）は本発明の特定デバイス情報に相当する。また、図８のＰＪＬ受信処理において、Ｓ２３０，Ｓ３３０，Ｓ３４０の各処理はいずれも、オプション追加プログラムの処理であって本発明の対応情報追加手段が実行する処理に相当する。
【０１２０】
［第３実施形態］
上記第２実施形態では、オプション実行プログラム８７を全てフラッシュＲＯＭ１６内に格納させた例を示したが、本実施形態では、図９に示すように、オプション実行プログラム全体のうち、ＰＪＬコマンドに対する通常の処理（情報の取得又は設定など）を行う部分である第１オプション実行プログラム９２と、上述した特殊処理を行う部分である第２オプション実行プログラム９４とに分割し、第１オプション実行プログラム９２はマスクＲＯＭ１４へ、第２オプション実行プログラム９４へ、それぞれ格納するようにしている。
【０１２１】
つまり、本実施形態のＰＪＬ処理プログラム９０は、主として、マスクＲＯＭ１４に格納されたコマンド・オプション認識プログラム７２及び第１オプション実行プログラム９２と、フラッシュＲＯＭ１６に格納されたオプション辞書８８及び第２オプション実行プログラム９４とにより構成されている。なお、図９において、図２又は図７と同じ構成要素には同じ符号を付している。
【０１２２】
このように、オプション実行プログラムを２つに分けてそれぞれマスクＲＯＭ１４とフラッシュＲＯＭ１６とに格納することにより、フラッシュＲＯＭ１６におけるオプション実行プログラムが占める領域を低減させることができ、フラッシュＲＯＭ１６をより有効に利用できるようになる。
【０１２３】
また、本実施形態では、第２実施形態と同様、“ＡＤＤＰＪＬ”コマンドによって、取得又は設定等が可能な情報（オプション）を新たに追加できるよう構成されている。但し、本実施形態では、オプション追加の際のＰＪＬコマンドの形式として、第２実施形態のように「新たに追加したい情報名（オプション名）」と「ＥＥＰＲＯＭ＿ＩＤ」を“ＡＤＤＰＪＬ”コマンドに付加するのではなく、“ＡＤＤＰＪＬ”コマンドの後に単に「新たに追加したい情報名（オプション名）」を付加するだけでよい。
【０１２４】
つまり、例えば、コピー機能におけるページカウンタに関する情報の取得又は設定等ができない状態（つまりオプション辞書８８に該当するオプション名がリストアップされていない状態）であるときに、このページカウンタに関する情報を取得又は設定等できるように新たなオプションとして追加したい場合は、ホスト５０側から、“＠ＰＪＬ  ＡＤＤＰＪＬ  ＣＯＰＹＣＯＵＮＴ”なるＰＪＬコマンドを送信すればよい。
【０１２５】
一方、複合機１０の内部では、当該複合機１０において設定されているあらゆる情報について、その情報に対応したＥＥＰＲＯＭ＿ＩＤが、例えばマスクＲＯＭ１４内において予め一覧テーブルとして登録されている。
【０１２６】
そのため、上記ＰＪＬコマンドを受けた複合機１０では、このＰＪＬコマンドが新規オプション追加用のコマンドであることが認識されると、オプション名“ＣＯＰＹＣＯＵＮＴ”を含むＥＥＰＲＯＭ＿ＩＤが上記一覧テーブル内にあるか否かをみて、ＥＥＰＲＯＭ＿ＩＤがあった場合は、オプション名とそのＥＥＰＲＯＭ＿ＩＤとを関連づけて新規登録オプション辞書８９に登録する。
【０１２７】
このように構成することで、ＰＪＬコマンドに対応可能なオプションを新たに追加する場合に、ＰＪＬコマンドとして、“ＡＤＤＰＪＬ”コマンドの後に単に「新たに追加したい情報名（オプション名）」を付加するだけでよいため、より簡単にオプションの追加を行うことができるようになる。
【０１２８】
次に、本実施形態のＰＪＬ受信処理について、図１０に基づいて説明する。図１０のフローチャートのうち、Ｓ４１０〜Ｓ５２０の処理は、図８に示した第２実施形態のＰＪＬ受信処理におけるＳ２１０〜Ｓ３２０と全く同じであるため、ここではその説明を省略する。
【０１２９】
そして、本実施形態では、ＰＪＬ処理プログラム９０のうちマスクＲＯＭ１４に格納されたオプション追加プログラムに従い、受信したコマンドがオプション追加のためのコマンドである“ＡＤＤＰＪＬ”であった場合（Ｓ４３０：ＹＥＳ）、追加要求されているオプション名、即ち“ＡＤＤＰＪＬ”コマンドと共に送られてきたオプション名の文字列を含むＥＥＰＲＯＭ＿ＩＤが、上述した一覧テーブル内にあるか否かが判断される（Ｓ５３０）。この結果、一覧テーブルになければそのままこの処理を終了することとなるが、一覧テーブルにあれば、ＲＡＭ２０における新規登録オプション辞書８９に追加対象のオプション名とそのＥＥＰＲＯＭ＿ＩＤを登録する。
【０１３０】
尚、本実施形態において、第１オプション実行プログラム９２は本発明（請求項５）における実行プログラムのうち“その他の部分”に相当するものであり、第２オプション実行プログラム９４は本発明（請求項５）における実行プログラムのうち“前記特殊処理を行うための部分”に相当するものである。
【０１３１】
［変形例］
以上、本発明の実施形態について説明したが、本発明の実施の形態は、上記各実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
【０１３２】
例えば、上記各実施形態では、情報の所在を示す所在情報としてＥＥＰＲＯＭ＿ＩＤを用いたが、ＥＥＰＲＯＭ＿ＩＤに限らず、要求された情報（オプションバリュー）が格納された場所へアクセスできる限り、所在情報の具体的内容は特に限定されない。
【０１３３】
また、上記第２実施形態及び第３実施形態では、オプション追加プログラムを有することにより、ＰＪＬコマンドにより取得又は設定等が可能なオプションを新たに追加できる例について説明したが、これに加えて、追加したオプションに関する登録内容を必要に応じて削除できるようにしてもよい。
【０１３４】
例えば、操作パネル４２を押す、或いはホスト５０側から削除用ＰＪＬコマンド“＠ＰＪＬ  ＤＥＬＰＪＬ  ＣＯＰＹＣＯＵＮＴ”を送ると“ＣＯＰＹＣＯＵＮＴ”に関する新規登録部分が新規登録オプション辞書８９から削除される、というように構成してもよい。
【０１３５】
また、上記第２実施形態及び第３実施形態では、新規登録オプション辞書８９をＲＡＭ２０に格納するようにしたが、ＲＡＭ２０に限らず、例えばメディアドライブ２８に挿入されたＣＦ２９に格納するようにしてもよいし、或いは、当該複合機１０に内蔵された図示しないバッテリからの電源供給を受けて動作するバックアップＲＡＭ（図示略）などに格納するようにしてもよい。このようにすれば、複合機１０本体の電源がオフされても新規登録オプション辞書８９は削除されず残ったままとなるため、新規登録した辞書をより長く利用することが可能となる。
【０１３６】
更に、上記第１実施形態では、図６のＰＪＬ受信処理におけるＳ１４０或いはＳ１６０の処理において、ＰＪＬコマンドに含まれるオプション名がオプション辞書７６にリストアップされていないと判断された場合は、そのままＰＪＬ受信処理を終了するものとして説明したが、これに限らず、例えば、要求されたオプションはオプション辞書７６にリストアップされていない旨を示す情報（エラー情報）をホスト５０へ返答するようにしてもよい。
【０１３７】
第２実施形態における図８のＰＪＬ受信処理についても同様であり、Ｓ２５０或いはＳ２９０の処理でオプション辞書８８にリストアップされていないと判断された場合にはその旨を示す情報（エラー情報）をホスト５０へ返答するようにしてもよい。第３実施形態における図１０のＰＪＬ受信処理についても同様であり、Ｓ４５０或いはＳ４９０の処理でオプション辞書８８にリストアップされていないと判断された場合にはその旨を示す情報（エラー情報）をホスト５０へ返答するようにしてもよい。
【０１３８】
更にまた、上記各実施形態では、複合機１０内の情報を取得又は設定等するためのコマンドの一例として、ＰＪＬコマンドを示したが、本発明は、ＰＪＬに準拠したコマンドに限らず、ホスト５０側からコマンドを送信でき、そのコマンドに応じて内部情報を取得（或いは設定変更）してホスト５０側へ応答することが可能なあらゆるコマンドに対して適用可能である。
【０１３９】
また、本発明の適用は、上述した複合機１０に限らず、ホスト５０等の外部装置からのコマンドに応じて内部情報を提供あるいは設定内容を変更できるようなデバイス・情報処理装置であれば何でも適用できる。そのようなデバイス・情報処理装置としては、例えば、プリンタ機能だけを備えた印刷装置、電話機能・ファクシミリ機能などの最低限の機能のみを備えたファクシミリ装置、コピー機能だけを備えたコピー装置、更には、イメージスキャナ、デジタルカメラ、ＵＳＢカメラ、各種ストレージデバイスなど、多種多様のものが考えられる。
【図面の簡単な説明】
【０１４０】
【図１】実施形態の印刷システムの概略構成を示すブロック図である。
【図２】第１実施形態における各メモリのＰＪＬ関連プログラム・データの格納状態を示す説明図である。
【図３】コマンドの種類と対応可能なオプションを示す説明図であり、（ａ）はコマンドの種類を示すコマンドリスト、（ｂ）はフラッシュＲＯＭに格納されたオプション辞書の内容を示すものである。
【図４】ＥＥＰＲＯＭの管理領域においてオプション関連情報が格納されていることを示す説明図である。
【図５】ホストからのＰＪＬコマンドと、そのＰＪＬコマンドに対して複合機が返答等するデータの具体例を示す説明図である。
【図６】第１実施形態のＰＪＬ受信処理を示すフローチャートである。
【図７】第２実施形態における各メモリのＰＪＬ関連プログラム・データの格納状態を示す説明図である。
【図８】第２実施形態のＰＪＬ受信処理を示すフローチャートである。
【図９】第３実施形態における各メモリのＰＪＬ関連プログラム・データの格納状態を示す説明図である。
【図１０】第３実施形態のＰＪＬ受信処理を示すフローチャートである。
【符号の説明】
【０１４１】
１・・・印刷システム、２・・・通信ケーブル、１０・・・複合機、１２・・・ＣＰＵ、１４・・・マスクＲＯＭ、１６・・・フラッシュＲＯＭ、１８・・・ＥＥＰＲＯＭ、２０・・・ＲＡＭ、２２・・・プリンタ部、２４・・・スキャナ部、２６・・・ユーザインターフェイス、２８・・・メディアドライブ、２９・・・メモリカード、３０・・・ホストインターフェイス、３２・・・モデム、３４・・・回線制御部、３６・・・ハンドセット、３８・・・バス、４２・・・操作パネル、４４・・・ＬＣＤパネル、４６・・・スピーカ部、５０・・・ホスト、６０・・・電話回線網、７０，８５，９０・・・ＰＪＬ処理プログラム、７２，８６・・・コマンド・オプション認識プログラム、７４，８７・・・オプション実行プログラム、７６，８８・・・オプション辞書、８０，８１・・・オプション関連情報、８９・・・新規登録オプション辞書、９２・・・第１オプション実行プログラム、９４・・・第２オプション実行プログラム
【図１】
2006119957.tif 000003
【図２】
2006119957.tif 000004
【図３】
2006119957.tif 000005
【図４】
2006119957.tif 000006
【図５】
2006119957.tif 000007
【図６】
2006119957.tif 000008
【図７】
2006119957.tif 000009
【図８】
2006119957.tif 000010
【図９】
2006119957.tif 000011
【図１０】
2006119957.tif 000012