(57)【特許請求の範囲】
【請求項１】
制御装置に接続可能な記録装置であって、
フォントデータが格納されたコードページ、及び、前記コードページに格納された前記フォントデータのうち特定のフォントデータを変更する書換え処理実行コマンドを含む初期実行コマンドデータ、が記憶された不揮発性記憶部と、
前記不揮発性記憶部に記憶されている前記コードページを一時的に記憶する一時記憶部と、
電源の投入後、又は、リセット後、前記不揮発性記憶部に記憶された前記初期実行コマンドデータに基づいて、処理を実行する処理実行部と、を備え、
前記処理実行部は、
前記書換え処理実行コマンドを実行して、前記一時記憶部に記憶された前記コードページに格納された前記フォントデータのうち前記特定のフォントデータを地域ごとのフォントデータへと変更し、前記一時記憶部に記憶された変更後のコードページを使用して画像の記録を実行することを特徴とする記録装置。
【請求項２】
前記処理実行部は、
前記制御装置から前記コードページに関する問い合わせがあった場合、前記一時記憶部に記憶された変更後のコードページに基づいて当該問い合わせに対して応答することを特徴とする、請求項１に記載の記録装置。
【請求項３】
前記初期実行コマンドデータは、
前記不揮発性記憶部の所定の記憶領域に、前記書換え処理実行コマンドを含むコマンドが実行順に書き込まれたデータ部と、
前記記憶領域における前記データ部のサイズを示す情報を含む情報部と、を含んで構成されていることを特徴とする請求項１又は２に記載の記録装置。
【請求項４】
前記書換え処理実行コマンドは、前記コードページにおける通貨記号を示すフォントデータを別の地域の通貨記号へと変更させる、通貨記号書換え処理実行コマンドである、請求項１乃至３に記載の記録装置。
【請求項５】
制御装置に接続可能に構成され、
フォントデータが格納されたコードページ、及び、前記コードページに格納された前記フォントデータのうち特定のフォントデータを変更する書換え処理実行コマンドを含む初期実行コマンドデータ、が記憶された不揮発性記憶部と、
前記不揮発性記憶部に記憶されている前記コードページを一時的に記憶する一時記憶部と、
電源の投入後、又は、リセット後、前記不揮発性記憶部に記憶された前記初期実行コマンドデータに基づいて、処理を実行する処理実行部と、を備える記録装置の制御方法であって、
前記書換え処理実行コマンドを実行して、前記一時記憶部に記憶された前記コードページに格納された前記フォントデータのうち前記特定のフォントデータを地域ごとのフォントデータへと変更し、前記一時記憶部に記憶された変更後のコードページを使用して画像の記録を実行することを特徴とする記録装置の制御方法。
【請求項６】
制御装置に接続可能に構成され、
フォントデータが格納されたコードページ、及び、前記コードページに格納された前記フォントデータのうち特定のフォントデータを変更する書換え処理実行コマンドを含む初期実行コマンドデータ、が記憶された不揮発性記憶部と、
前記不揮発性記憶部に記憶されている前記コードページを一時的に記憶する一時記憶部と、を備える記録装置の各部を制御する制御部により実行されるプログラムであって、
前記制御部を、
電源の投入後、又は、リセット後、前記不揮発性記憶部に記憶された前記初期実行コマンドデータに基づいて、処理を実行する処理実行部として機能させ、
前記処理実行部は、
前記書換え処理実行コマンドを実行して、前記一時記憶部に記憶された前記コートページに格納された前記フォントデータのうち前記特定のフォントデータを地域ごとのフォントデータへと変更し、前記一時記憶部に記憶された変更後のコードページを使用して画像の記録を実行することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置に接続可能な記録装置、当該記録装置の制御方法、及び、当該記録装置を制御するためのプログラムに関する。
【背景技術】
【０００２】
従来、フォントデータを記憶し、このフォントデータに基づいて文字を記録可能に構成された記録装置（シリアルプリンター）が知られている（例えば、特許文献１参照）。
この種のプリンターでは、ホストコンピューター等の制御装置から、フォントデータを格納するコードページに関する問い合わせがあった場合に、当該問い合わせに対して応答する機能が実装されたものがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−１９５７４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、フォントデータは、文字を記録する際に利用するものであるため、制御装置からフォントデータに関する問い合わせがあった場合は、実際に使用するフォントデータの内容に基づいて応答すべきである。例えば、フォントデータについて一時的な改変が行われている場合は、記録装置は、一時的な改変が反映されたフォントデータ基づいて、制御装置からの問い合わせに応じるべきである。
本発明は、上述した事情に鑑みてなされたものであり、記録装置が、制御装置からフォントデータを格納するコードページに関する問い合わせがあった場合に、コードページの使用態様に応じて適切に応答できるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、制御装置に接続可能な記録装置であって、初期処理を実行させる初期実行コマンドが１又は複数記述された初期実行コマンドデータ、及び、フォントデータが格納されたコードページが記憶された記憶部と、電源の投入後、又は、リセット後、前記記憶部に記憶された前記初期実行コマンドデータに基づいて、前記初期実行コマンドを順次実行する処理実行部と、を備え、前記処理実行部は、前記記憶部を参照して前記コードページを一時記憶領域に展開し、前記コードページの内容を特定の仕向地用の内容へと変更し、前記制御装置から前記コードページに関する問い合わせがあった場合、特定の仕向地用に内容が変更され、前記一時記憶領域に展開された前記コードページに基づいて当該問い合わせに対して応答することを特徴とする。
この構成では、電源の投入後、又は、リセット後、コードページは、仕向地に応じてその内容が変更された上で、一時記憶領域に展開される。これにより、仕向地に応じて適切にその内容が変更されたコードページを利用して各種文字を記録可能となる。そして、上記構成によれば、記録装置は、制御装置からコードページに関して問い合わせがあった場合は、変更後、一時記憶領域に展開されたコードページ、すなわち、実際に使用するコードページの内容に基づいて、当該問い合わせに対して応答するため、コードページの使用態様に応じた適切な応答が可能である。
【０００６】
また、本発明は、前記処理実行部は、前記コードページに格納されたフォントデータのうち、特定のフォントデータを、仕向地に応じたフォントデータへと変更し、前記制御装置から、前記特定のフォントデータについて問い合わせがあった場合、仕向地に応じた変更後のフォントデータに基づいて当該問い合わせに対して応答することを特徴とする。
この構成によれば、記録装置は、特定のフォントデータについて問い合わせがあった場合、初期処理によって仕向地に応じて変更された後のフォントデータに基づいて応答するため、実際に使用するフォントデータの内容に応じた適切な応答が可能である。
【０００７】
また、本発明は、前記初期実行コマンドデータは、前記記憶部の所定の記憶領域に、各前記初期実行コマンドを示すデータが実行順に連続して書き込まれたデータ部と、当該記憶領域における前記データ部のサイズを示す情報を含む情報部と、を含んで構成されていることを特徴とする。前記初期実行コマンドを示すデータが実行順に連続して書き込まれたデータ部と、当該記憶領域における前記データ部のサイズを示す情報を含む情報部と、を含んで構成されていることを特徴とする。
ここで、初期実行コマンドデータを、関係データベースとし、これにより、初期実行コマンドデータに記述された各初期実行コマンドの管理を容易化することも考えられるが、この場合、関係データベースの管理情報（例えば、記憶領域における各フィールドのアドレスと、各フィールドに格納されたデータとを対応付ける情報）を記憶する必要があり、また、不必要に記憶領域を確保する事態が生じ得るため、不揮発性メモリーの効率的な利用に課題がある。
これを踏まえ、上記構成によれば、初期実行コマンドデータにおけるデータ部では、各初期コマンドを示すデータが実行順に連続して書き込まれているため、当該データ部が占める記憶領域が必要最小限で済むと共に、各コマンドを実行する順番を管理するための情報を記憶する必要がない。また、初期行コマンドデータにおける情報部は、データ部のサイズを示す情報という、記憶領域においてデータ部が記憶されている領域を特定するために必要な最小限の情報を保持している。このため、この情報部のサイズ自体が小さく、不揮発性メモリーの効率的な利用を実現できる。
また、本発明は、前記初期実行コマンドは、前記コードページを一時記憶領域に展開し、前記コードページの内容を特定の仕向地用の内容へと変更させることを指示する仕向地対応コマンドを含むことを特徴とする。
また、本発明は、前記仕向地対応コマンドは、前記コードページに格納されたフォントデータのうち、特定のフォントデータを、仕向地に応じたフォントデータへと変更させる指示を含むことを特徴とする。
【０００８】
また、上記目的を達成するために、本発明は、制御装置に接続可能に構成され、初期処理を実行させる初期実行コマンドが１又は複数記述された初期実行コマンドデータ、及び、フォントデータが格納されたコードページが記憶された記憶部を備える記録装置の制御方法であって、前記記憶部を参照して前記コードページを一時記憶領域に展開し、前記コードページの内容を特定の仕向地用の内容へと変更し、電源の投入後、又は、リセット後、前記記憶部に記憶された前記初期実行コマンドデータに基づいて、前記初期実行コマンドを順次実行し、前記制御装置から前記コードページに関する問い合わせがあった場合、特定の仕向地用に内容が変更され、前記一時記憶領域に展開された前記コードページに基づいて当該問い合わせに対して応答することを特徴とする。
この制御方法によれば、記録装置は、制御装置からコードページに関して問い合わせがあった場合は、変更後、一時記憶領域に展開されたコードページ、すなわち、実際に使用するコードページの内容に基づいて、当該問い合わせに対して応答するため、コードページの使用態様に応じた適切な応答が可能である。
【０００９】
また、上記目的を達成するために、本発明は、制御装置に接続可能に構成され、初期処理を実行させる初期実行コマンドが１又は複数記述された初期実行コマンドデータ、及び、フォントデータが格納されたコードページが記憶された記憶部を備える記録装置を制御する制御部により実行されるプログラムであって、前記制御部を、電源の投入後、又は、リセット後、前記記憶部に記憶された前記初期実行コマンドデータに基づいて、前記初期実行コマンドを順次実行する処理実行部として機能させ、前記処理実行部は、前記コードページを一時記憶領域に展開し、前記コードページの内容を特定の仕向地用の内容へと変更し、前記制御装置から前記コードページに関する問い合わせがあった場合、特定の仕向地用に内容が変更され、前記一時記憶領域に展開された前記コードページに基づいて当該問い合わせに対して応答することを特徴とする。
このプログラムによれば、記録装置は、制御装置からコードページに関して問い合わせがあった場合は、変更後、一時記憶領域に展開されたコードページ、すなわち、実際に使用するコードページの内容に基づいて、当該問い合わせに対して応答するため、コードページの使用態様に応じた適切な応答が可能である。
【発明の効果】
【００１０】
本発明によれば、制御装置からフォントデータを格納するコードページに関する問い合わせがあった場合に、コードページの使用態様に応じて適切に応答できる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態に係る記録システムの機能的構成を示すブロック図である。
【図２】コードページを示す図である。
【図３】初期実行コマンドデータを示す図である。
【図４】プリンターの動作を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本実施形態に係る記録システム１の機能的構成を示すブロック図である。
記録システム１は、スーパーマーケットやコンビニエンスストア等の店舗に適用され、店舗に来店した顧客の代金の支払いに応じてレシートを発行する機能を少なくとも有するシステムであり、図１に示すように、ホストコンピューター１０（制御装置）と、ＰＯＳサーバー１１と、プリンター１２（記録装置）とを備えている。
ＰＯＳサーバー１１は、ネットワークを介してホストコンピューター１０に通信可能に接続されており、店舗で販売している商品の商品コードや、名称、金額等のレシートの発行のために必要となる情報を示すデータをデータベースとして記憶する。ホストコンピューター１０は、レシートの発行に際し、適宜、ＰＯＳサーバー１１に記憶されたデータベースを参照し、必要な情報を取得する。
【００１３】
ホストコンピューター１０は、ホスト側制御部１５と、ホスト側表示部１６と、ホスト側入力部１７と、インターフェイス（Ｉ／Ｆ）部１８と、ホスト側記憶部１９と、を備える。
ホスト側制御部１５は、ホストコンピューター１０の各部を中枢的に制御するものであり、演算実行部としてのＣＰＵや、このＣＰＵに実行される基本制御プログラムや、この基本制御プログラムに係るデータ等を不揮発的に記憶するＲＯＭ、ＣＰＵに実行されるプログラムやこのプログラムに係るデータ等を一時的に記憶するＲＡＭ、その他の周辺回路等を備える。ホスト側制御部１５は、ＰＯＳアプリケーション実行部２０と、プリンタードライバー実行部２１と、を備えているが、これらについては後述する。ホスト側表示部１６は、液晶ディスプレーパネルや、有機ＥＬパネル等の表示パネルを備え、ホスト側制御部１５の制御の下、表示パネルに各種情報を表示する。ホスト側入力部１７は、キーボードや、マウス、バーコードリーダー、カードリーダー等の入力デバイスに接続され、これら入力デバイスの出力信号をホスト側制御部１５に出力する。バーコードリーダーは商品の包装紙等に記録されたバーコードの読み取りに利用され、カードリーダーはクレジットカードや、会員カード等に記録された情報の読み取りに利用される。バーコードリーダーやカードリーダー等の入力デバイスを用いて取得した情報は、レシートの発行に係る処理に用いられる。インターフェイス部１８は、ホスト側制御部１５の制御の下、プリンター１２との間で通信規格に準拠した通信を行う。ホスト側記憶部１９は、各種データを書き換え可能に記憶する部位であり、ハードディスクや、ＥＥＰＲＯＭ等の記憶装置を備える。
【００１４】
一方、プリンター１２は、ロール状に巻かれた感熱ロール紙を、ローラー状のプラテンにより搬送し、この感熱ロール紙の記録面に、発熱素子を備えたラインサーマルヘッドによって熱を与えることにより画像を記録した上で、所定の位置で感熱ロール紙を切断することにより、レシートを発行するサーマルヘッド式プリンターである。
図１に示すように、プリンター１２は、制御部３０と、表示部３１と、入力部３２と、プリントエンジン３３と、記憶部３５と、インターフェイス（Ｉ／Ｆ）部３６と、を備える。
制御部３０は、プリンター１２の各部を中枢的に制御するものであり、ＣＰＵや、ＲＯＭ、ＲＡＭ、その他の周辺回路等を備えている。制御部３０は、処理実行部３０ａを備えているが、これについては後述する。表示部３１は、プリンター１２の動作状態等の各種情報を表示する液晶パネルや有機ＥＬパネル等の表示パネルや、ＬＥＤ等を備え、制御部３０の制御の下、当該表示パネルに各種情報を表示し、又は、ＬＥＤの点灯／消灯する。入力部３２は、プリンター１２に設けられた各種操作スイッチに接続され、操作スイッチに対する操作を検出し操作信号として制御部３０に出力する。プリントエンジン３３は、制御部３０の制御の下、各種センサーの検出値を監視しながら、上述したラインサーマルヘッドのほか、感熱ロール紙を搬送するプラテンローラーを駆動するための搬送モーターや、切断機構が備えるカッターを駆動するためのカッター駆動モーターを動作させて、感熱ロール紙に画像を記録し、画像を記録した感熱ロール紙を切断することによりレシートを発行する。記憶部３５は、ＥＥＰＲＯＭ等のメモリーを備え、各種データを書き換え可能に記憶する。記憶部３５には、プリンター１２の動作を制御するためのファームウェア４１が記憶されるほか、コードページ４０と、初期実行コマンドデータ４３と、（いずれも後述）が記憶される。インターフェイス部３６は、制御部３０の制御の下、ホストコンピューター１０との間で通信規格に準拠した通信を行う。
【００１５】
図２は、コードページ４０の内容を模式的に示す図である。
コードページ４０とは、プリンター１２によって記録可能な文字のそれぞれのフォントデータを集合して記憶するテーブルのことである。フォントデータとは、文字を記録媒体に記録可能な態様で表現する実データ（ビットマップフォントデータや、スケイラブルフォントデータ等）のことである。
図２に示すように、コードページ４０は、その記憶領域が分割されることによって、複数の格納領域ｋが形成されており、１つの格納領域ｋに、１つのフォントデータが格納可能である。格納領域ｋのそれぞれには、各領域を一意に示す番地が割り振られており、１つの番地を特定することにより、１つの格納領域ｋが特定される。
本実施形態では、図２に示すように、コードページ４０に形成された格納領域ｋのうち、番地ＸＸの格納領域ｋ１には、通貨記号を示すフォントデータが格納される。この格納領域ｋ１に格納されるデータについては、後述する。
コードページ４０は、後述する初期処理によってＲＡＭ等の一時記憶領域に展開された上で、使用される。
【００１６】
次いで、ＰＯＳアプリケーション実行部２０及びプリンタードライバー実行部２１の説明を通して、記録システム１がレシートを発行する際の基本的な動作について説明する。
ＰＯＳアプリケーション実行部２０は、ホストコンピューター１０に予めインストールされたＰＯＳアプリケーションを実行することにより、取引毎に、適宜、ＰＯＳサーバー１１にアクセスした上で、取引において購入された商品を示す情報や、商品の単価を示す情報、購入金額を示す情報等のレシートに記載すべき情報を取得する。そして、ＰＯＳアプリケーション実行部２０は、取得した情報に基づいて、レシートに記録すべき画像に係る記録データを生成し、プリンタードライバー実行部２１に出力する。レシートに記録すべき画像には、商品の名称を示す文字に係る画像や、値段を示す文字に係る画像等の文字に係る画像が含まれている。ＰＯＳアプリケーション実行部２０が生成する記録データにおいては、これら文字は、アスキーコードやＵｎｉｃｏｄｅ等の所定の文字コードとして表現されている。
プリンタードライバー実行部２１は、ホストコンピューター１０に予めインストールされたプリンタードライバーを実行することにより、ＰＯＳアプリケーション実行部２０から入力された記録データに基づいて、プリンター１２のコマンド仕様に対応した記録コマンドを生成し、制御部３０に出力する。この記録コマンドには、搬送機構に感熱ロール紙を搬送させるコマンドや、ラインサーマルヘッドを駆動させるコマンド、切断機構に感熱ロール紙を切断させるコマンド等の、プリンター１２にレシートを発行させるための各種コマンドが含まれている。
記録コマンドが入力された制御部３０は、この記録コマンドに基づいてプリンター１２の各部を制御し、レシートを発行する。
【００１７】
次いで、プリンタードライバー実行部２１による文字コードに対する処理について説明する。
ＰＯＳアプリケーション実行部２０から記録データが入力された場合、プリンタードライバー実行部２１は、当該記録データを解析し、記録データに含まれる文字コードを抽出する。次いで、プリンタードライバー実行部２１は、抽出した文字コードを、番地情報に変換する。番地情報とは、コードページ４０において、抽出した文字コードの文字に対応するフォントデータが格納された格納領域ｋの番地を示す情報のことである。なお、文字コードと、番地情報と、が対応づけられたテーブルがホスト側記憶部１９に記憶されており、プリンタードライバー実行部２１は、当該テーブルを参照して、文字コードを番地情報に変換する。例えば、図２を参照し、文字としての「￥」を示す文字コードについては、プリンタードライバー実行部２１は、当該文字コードを、番地ＸＸを示す番地情報に変換する。プリンタードライバー実行部２１は、文字コードを番地情報に変換した上で、記録コマンドをプリンター１２に出力する。
上述したように、記録コマンドが入力されると、制御部３０は、記録コマンドに基づいてプリントエンジン３３を制御してレシートを発行する。その際、制御部３０は、レシートに記録すべき文字については、番地情報に基づいて、ＲＡＭ等の一時記憶領域に展開されているコードページ４０における格納領域ｋを特定し、特定した格納領域ｋに格納されているフォントデータに基づいて、文字に係る画像の記録を実行する。例えば、制御部３０は、番地ＸＸを示す番地情報に基づいて、コードページ４０における格納領域ｋ１を特定し、特定した格納領域ｋ１に格納されているフォントデータを取得し、当該フォントデータを所定の画像バッファーに展開し、展開したデータに基づいてラインサーマルヘッド駆動用の駆動回路を制御して、通貨記号の画像を感熱ロール紙に記録する。
【００１８】
次いで、初期実行コマンドデータ４３について説明する。
図３は、記憶部３５に記憶されている初期実行コマンドデータ４３を模式的に示す図である。
初期実行コマンドデータ４３とは、電源の投入後、又は、リセット後に実行すべきコマンドを一覧的に記憶したデータである。リセットとは、プリンター１２の電源がオンの状態のときに、電源がオンの状態を維持しつつ、プリンター１２を再び始動の状態に戻すことを言い、本実施形態では、ホストコンピューター１０からリセットを指示するコマンドが入力されることにより、リセットに係る処理が開始される。このリセット後は、電源導入後と同様の処理が行われる。
初期処理とは、電源の投入後、又は、リセット後に実行すべき処理として予め定められている処理のことであり、例えば、ＣＰＵやＲＡＭに対するリセット等の必要な初期処理や、各種プログラムに対する所定のイニシャル処理等の各種初期化に係る処理、プリントエンジン３３の各種機構の初期動作確認に係る処理等である。
そして、初期実行コマンドデータ４３には、初期処理を実行する場合、プリンター１２を正常に作動させるために必ず実行すべき処理として、ファームウェア４１の機能によって行われる処理とは別に、付加的に実行すべき処理のコマンド（以下、「初期実行コマンド」という。）が一覧的に記憶されている。つまり、初期実行コマンドデータ４３に１のコマンドが登録されている場合、プリンター１２は、初期処理の実行に際し、ファームウェア４１の機能により行われる初期処理と併せて、当該１のコマンドを実行する。
【００１９】
図３に示すように、初期実行コマンドデータ４３は、情報部４３ａと、データ部４３ｂとにより構成されている。
データ部４３ｂには、初期実行コマンドを示すデータが実行順に連続して書き込まれている。図３の例では、データ部４３ｂには、それぞれ８バイトからなる初期実行コマンドを示すデータが、実行順に、５つ、連続して書き込まれている。
情報部４３ａには、データ部４３ｂのサイズを示す情報であるサイズ情報が書き込まれている。図３の例では、データ部４３ｂのサイズは４０バイト（８バイト×５）であるため、情報部４３ａには、データ部４３ｂのサイズが４０バイトであることを示すサイズ情報が書き込まれている。
なお、情報部４３ａ、及び、データ部４３ｂが記憶されている記憶領域の先頭アドレスは、固定である。
このように本実施形態では、初期実行コマンドデータ４３におけるデータ部４３ｂに、各初期コマンドを示すデータが実行順に連続して書き込まれているため、当該データ部４３ｂが占める記憶領域が必要最小限で済むと共に、各コマンドを実行する順番を管理するための情報を記憶する必要がない。また、初期実行コマンドデータ４３における情報部４３ａは、データ部４３ｂのサイズを示す情報という、記憶領域においてデータ部４３ｂが記憶されている領域を特定するために必要な最小限の情報を保持している。このため、この情報部４３ａのサイズ自体が小さく、記憶部３５の効率的な利用を実現できる。ここで、初期実行コマンドデータ４３を、関係データベースとし、これにより、初期実行コマンドデータ４３に記述された各初期実行コマンドの管理を容易化することも考えられるが、この場合、関係データベースの管理情報（例えば、記憶領域における各フィールドのアドレスと、各フィールドに格納されたデータとを対応付ける情報）を記憶する必要があり、また、不必要に記憶領域を確保する事態が生じ得るため、記憶部３５の効率的な利用に課題がある。
【００２０】
この初期実行コマンドデータ４３は、以下のことを目的として生成されたデータである。
すなわち、上位機種のプリンター、及び、下位機種のプリンター等、基本的なプラットフォームが共通し、プラットフォーム上で動くソフトウェアの体系が共通しているものにおいて、プリンター間で、初期処理に際して行うべき処理の大部分が共通している場合がある。このような場合に、それぞれ異なる初期処理を行うようなファームウェア４１を別個にプログラミングし、インストールすれば、開発容易性が阻害され、また、開発コストの向上を招くおそれがある。
本実施形態では、初期実行コマンドデータ４３を予め記憶部３５に記憶する構成とし、初期処理に際して行うべき処理のうち、異なる機種のプリンター間で共通する処理に関しては、ファームウェア４１の機能として実行できるようファームウェア４１をプログラミングし、一方、共通していない処理に関しては、当該処理に係るコマンドを、それぞれのプリンターの初期実行コマンドデータ４３に記述する。これにより、少なくともファームウェア４１の初期処理に係るプログラムに関しては、異なる機種のプリンター間で共通化することができ、別個のプログラムを開発する場合と比較して開発容易性の向上、及び、開発コストの削減を実現できる。
【００２１】
また、同一機種のプリンターであっても、プリンターが出荷される仕向地によって、初期処理に際して行うべき処理が異なる場合がある。本実施形態では、初期実行コマンドデータ４３を予め記憶部３５に記憶する構成とし、初期処理に際して行うべき処理のうち、仕向地にかかわらず共通する処理に関しては、ファームウェアの機能として実行できるようファームウェアをプログラミングし、一方、仕向地によって異なる処理に関しては、それぞれのプリンターの初期実行コマンドデータ４３に登録する。これにより、少なくともファームウェアの初期処理に係るプログラムに関しては、仕向地にかかわらず共通化することができ、仕向地に応じて別個のプログラムを開発する場合と比較して開発容易性の向上、及び、開発コストの削減を実現している。
【００２２】
本実施形態では、初期実行コマンドデータ４３には、通貨記号書換処理実行コマンドＴＣ（仕向地対応コマンド）が記述されている。図３の例では、初期実行コマンドデータ４３に記述された初期実行コマンドのうち、最初に記述されている初期実行コマンドが、通貨記号書換処理実行コマンドＴＣである。
通貨記号書換処理実行コマンドＴＣとは、コードページ４０をＲＡＭ等の一時記憶領域に展開させると共に、仕向地に対応して、コードページ４０における通貨記号を示すフォントデータの上書き（フォントデータの変更）を実行させる（「コードページの内容を特定の仕向地用の内容へと変更させる」、及び、「特定のフォントデータを、仕向地に応じたフォントデータへと変更させる」に含まれる概念である）コマンドである。
すなわち、日本の通貨記号は「￥」であり、また、北米の通貨記号は「＄」であるように、通貨記号は仕向地によって異なる。そして、通貨記号書換処理実行コマンドＴＣに係る処理は、コードページ４０をＲＡＭ等の一時記憶領域に展開すると共に、コードページ４０に形成された格納領域ｋのうち、通貨記号のフォントデータが格納される格納領域ｋとして予め定められている領域（図２の例では格納領域ｋ１）に対して、仕向地に対応した通貨記号のフォントデータを書き込む処理である。
例えば、仕向地が日本であるプリンター１２における通貨記号書換処理実行コマンドＴＣは、コードページ４０を一時記憶領域に展開させると共に、コードページ４０の格納領域ｋ１に「￥」を示すフォントデータを上書き（フォントデータの変更）させるコマンドである。当該コマンドを読み出した制御部３０は、コードページ４０を一時記憶領域に展開すると共に、当該コードページ４０における格納領域ｋ１に「￥」を示すフォントデータを上書き（フォントデータの変更）する。また例えば、仕向地が北米であるプリンター１２における通貨記号書換処理実行コマンドＴＣは、コードページ４０を一時記憶領域に展開させると共に、コードページ４０の格納領域ｋ１に「＄」を示すフォントデータを書き込ませるコマンドであり、当該コマンドを読み出した制御部３０は、コードページ４０を一時記憶領域に展開すると共に、当該コードページ４０における格納領域ｋ１に「＄」を示すフォントデータを上書き（フォントデータの変更）する。
【００２３】
次いで、制御部３０が備える処理実行部３０ａの動作について説明する。
図４は、処理実行部３０ａの動作を示すフローチャートである。
処理実行部３０ａの機能は、ＣＰＵがプログラムを読み出して実行する等、ハードウェアとソフトウェアとの協働により実現される。まず、処理実行部３０ａは、電源が投入されたか否か、又は、リセットが指示されたか否かを監視する（ステップＳＡ１）。電源が投入された、又は、リセットが指示された場合（ステップＳＡ１：ＹＥＳ）、処理実行部３０ａは、初期実行コマンドデータ４３の情報部４３ａにアクセスし、データ部４３ｂのサイズを取得する（ステップＳＡ２）。
次いで、処理実行部３０ａは、データ部４３ｂの先頭アドレスにアクセスし、先頭アドレスの直後に書き込まれている初期実行コマンドを、１つ分、読み出して、実行する（ステップＳＡ３）。その際、処理実行部３０ａは、読み出した初期実行コマンドを示すデータのサイズを取得し、サイズを示す情報をＲＡＭの所定の記憶領域に記憶する。以後、処理実行部３０ａは、初期実行コマンドを読み出す度に、読み出した初期実行コマンドを示すデータのサイズを取得し、ＲＡＭに記憶されたサイズを示す情報に加算していく。以下の説明では、読み出した初期実行コマンドを示すデータのサイズの累計を、「累計サイズ」という。ＲＡＭの所定の記憶領域に記憶されたサイズを示す情報は、累計サイズを示している。
【００２４】
ステップＳＡ３においてデータ部４３ｂの先頭アドレスの直後に書き込まれている初期実行コマンドを実行した後、処理実行部３０ａは、累計サイズが、ステップＳＡ２で取得したデータ部４３ｂのサイズとなったか否かを判別する（ステップＳＡ４）。
累計サイズが、ステップＳＡ２で取得したデータ部４３ｂのサイズとなっているということは、データ部４３ｂに書き込まれている初期実行コマンドの全てについて、読み出し、及び、実行が完了しているということである。
ステップＳＡ４において、累計サイズが、ステップＳＡ２で取得したデータ部４３ｂのサイズとなっていない場合（ステップＳＡ４：ＮＯ）、処理実行部３０ａは、直前に読み出し、実行した初期実行コマンドの次に書き込まれている初期実行コマンドを、読み出して実行し（ステップＳＡ５）、処理手順をステップＳＡ４へ移行する。
【００２５】
ステップＳＡ４において、累計サイズが、ステップＳＡ２で取得したデータ部４３ｂのサイズとなった場合、換言すれば、初期実行コマンドデータ４３に記述された全ての初期実行コマンドについて、各初期実行コマンドに係る初期処理が完了した場合（ステップＳＡ４：ＹＥＳ）、処理実行部３０ａは、処理手順をステップＳＡ６へ移行する。
なお、上述したように、本例では、初期実行コマンドデータ４３には、通貨記号書換処理実行コマンドＴＣが記述されている。従って、ステップＳＡ４において「ＹＥＳ」と判定された時点では、コードページ４０が一時記憶領域に展開され、かつ、コードページ４０における格納領域ｋ１に格納されたフォントデータは、仕向地に応じた通貨記号を示すフォントデータへと変更されている。
ステップＳＡ６において、処理実行部３０ａは、ホストコンピューター１０から、通貨記号についての問い合わせ、より具体的には、番地ＸＸを示す番地情報を指定してフォントデータに基づく文字を記録させたときに、記録される通貨記号が何であるかの問い合わせがあったか否かを監視する。
本実施形態では、ホストコンピューター１０に、初期処理の完了後の適宜のタイミングで上記問い合わせを行う機能、及び、上記問い合わせに対する応答に応じて、実際に記録される通貨記号を表す画像をホスト側表示部１６の表示パネルに表示する機能が新たに実装されている。ユーザーは、当該機能を利用して、プリンター１２に実際に記録を行わせる前に、通貨記号が、仕向地に応じた適切なものとなっているかを確実に確認することができる。
【００２６】
さて、ホストコンピューター１０から通貨記号の問い合わせがあった場合（ステップＳＡ６：ＹＥＳ）、処理実行部３０ａは、記憶部３５に記憶されているコードページ４０にアクセスするのではなく、一時記憶領域に展開されているコードページ４０、すなわち、仕向地に応じた改変が加わった後のコードページ４０にアクセスする（ステップＳＡ７）。次いで、処理実行部３０ａは、コードページ４０の番地ＸＸの格納領域ｋ１から通貨記号を示すフォントデータを取得し、当該フォントデータを、所定のプロトコルに準拠してホストコンピューター１０に送信する（ステップＳＡ８）。
このように、処理実行部３０ａは、ホストコンピューター１０から通貨記号に関して問い合わせがあった場合は、変更後、一時記憶領域に展開されたコードページ４０、すなわち、実際に使用するコードページ４０の内容に基づいて、当該問い合わせに対して応答する。このため、コードページ４０の使用態様に応じた適切な応答が可能である。
【００２７】
以上説明したように、本実施形態に係るプリンター１２は、電源の投入後、又は、リセット後に実行すべき初期処理を実行させる初期実行コマンドが１又は複数記述された初期実行コマンドデータ４３、及び、フォントデータが格納されたコードページ４０が記憶された記憶部３５を備えている。また、初期実行コマンドには、コードページ４０を一時記憶領域に展開させると共に、コードページ４０の内容を特定の仕向地用の内容へと変更させることを指示する通貨記号書換処理実行コマンドＴＣが含まれている。そして、処理実行部３０ａは、電源の投入後、又は、リセット後、初期実行コマンドデータ４３に基づいて、初期実行コマンドを順次実行する一方、ホストコンピューター１０からコードページ４０に関する問い合わせがあった場合、特定の仕向地用にその内容を変更し、一時記憶領域に展開したコードページ４０に基づいて当該問い合わせに対して応答する。
この構成によれば、プリンター１２は、ホストコンピューター１０からコードページ４０に関して問い合わせがあった場合は、変更後、一時記憶領域に展開されたコードページ４０、すなわち、実際に使用するコードページ４０の内容に基づいて、当該問い合わせに対して応答するため、コードページ４０の使用態様に応じた適切な応答が可能である。
【００２８】
また、本実施形態では、初期実行コマンドデータ４３に記述された通貨記号書換処理実行コマンドＴＣには、コードページ４０に格納されたフォントデータのうち、通貨記号に係る特定のフォントデータを、仕向地に応じたフォントデータへと変更させる指示が含まれている。そして、処理実行部３０ａは、ホストコンピューター１０から、通貨記号（特定のフォントデータ）について問い合わせがあった場合、一時記憶領域に展開したコードページ４０を参照し、仕向地に応じた変更後のフォントデータに基づいて当該問い合わせに対して応答する。
この構成によれば、プリンター１２は、特定のフォントデータについて問い合わせがあった場合、初期処理によって仕向地に応じて変更された後のフォントデータに基づいて応答するため、実際に使用するフォントデータの内容に応じた適切な応答が可能である。
【００２９】
また、本実施形態では、初期実行コマンドデータ４３は、記憶部３５の所定の記憶領域に、各初期実行コマンドを示すデータが実行順に連続して書き込まれたデータ部４３ｂと、当該記憶領域におけるデータ部４３ｂのサイズを示す情報を含む情報部４３ａと、を含んで構成されている。
この構成によれば、初期実行コマンドデータ４３におけるデータ部４３ｂでは、各初期コマンドを示すデータが実行順に連続して書き込まれているため、当該データ部４３ｂが占める記憶領域が必要最小限で済むと共に、各コマンドを実行する順番を管理するための情報を記憶する必要がない。また、初期実行コマンドデータ４３における情報部４３ａは、データ部４３ｂのサイズを示す情報という、記憶領域においてデータ部４３ｂが記憶されている領域を特定するために必要な最小限の情報を保持している。このため、この情報部４３ａのサイズ自体が小さく、記憶部３５の効率的な利用を実現できる。
【００３０】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、コードページ４０の内容を特定の仕向地用の内容へと変更させる具体的な例、及び、特定のフォントデータを、仕向地に応じたフォントデータへと変更させる具体的な例として、通貨記号を示すフォントデータの変更を挙げて説明したが、これに限らない。すなわち、初期実行コマンドデータ４３を利用した初期処理において、仕向地に応じて、コードページ４０の改変を行う記録装置に広く本発明を適用可能である。
また例えば、ホストコンピューター１０に接続されたプリンター１２はサーマル式の記録装置であったが記録方式はこれに限らずインクジェット式、ドットインパクト式など何であってもよい。また例えば、図１に示す各機能ブロックはハードウェアとソフトウェアの協働により任意に実現可能であり、特定のハードウェア構成を示唆するものではない。また、プリンター１２の各機能ブロックの機能を、プリンター１２に外部接続される別の装置に持たせるようにしてもよい。また、プリンター１２は、外部接続される記憶媒体に記憶させたプログラムを実行することにより、図４のフローチャートに係る動作を含む各種動作を実行するようにしてもよい。
【符号の説明】
【００３１】
１…記録システム、１０…ホストコンピューター（制御装置）、１２…プリンター（記録装置）、３０…制御部、３０ａ…処理実行部、４０…コードページ、４３…初期実行コマンドデータ、４３ａ…情報部、４３ｂ…データ部。
【図１】
0005987415.tif 000002
【図２】
0005987415.tif 000003
【図３】
0005987415.tif 000004
【図４】
0005987415.tif 000005