JPH03166620A - Printer controller - Google Patents

Printer controller

Info

Publication number
JPH03166620A
JPH03166620A JP1304989A JP30498989A JPH03166620A JP H03166620 A JPH03166620 A JP H03166620A JP 1304989 A JP1304989 A JP 1304989A JP 30498989 A JP30498989 A JP 30498989A JP H03166620 A JPH03166620 A JP H03166620A
Authority
JP
Japan
Prior art keywords
data
software
buffer
input buffer
software change
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP1304989A
Other languages
Japanese (ja)
Other versions
JP2844538B2 (en
Inventor
Mutsuo Shitamae
睦夫 下前
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP1304989A priority Critical patent/JP2844538B2/en
Publication of JPH03166620A publication Critical patent/JPH03166620A/en
Application granted granted Critical
Publication of JP2844538B2 publication Critical patent/JP2844538B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To prevent the data loss by saving the data stored in an auxiliary buffer at the time of recognizing a software change request command and initializing a system, and also, initializing an input buffer. CONSTITUTION:Data which is sent after a software change request command is sent to a printer is stored in an auxiliary buffer 83, and at the time of recognizing the software change request command and initializing a system, and also, initializing an input buffer 82, the data stored in the auxiliary buffer 83 is saved. In such a way, a data loss at the time of software change can be eliminated without adding a buffer to a host side.

Description

【発明の詳細な説明】 [産業上の利用分野] この発明はレーザプリンタ等のプリンタililJ御装
置、特にソフトウェア・チェンジ要求後のデータロスの
防止に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a printer control device such as a laser printer, and particularly to prevention of data loss after a software change request.

[従来の技術] 従来a数の異種プリンタでサポートされていたコンピュ
ータネットワーク上のものを、できるだけ少数のプリン
タでカバーするために異種プリンタのそれぞれのコマン
ドをソフトウェア・チェンジという方法で行なうことが
意図されている.従来のプリンタ制御装置においてはホ
ストコンピュータとの通信コマンドによりソフトウエア
を変える機能はなく、プリンタ本体に付属する才ベレー
ションパネル等によりソフトウエアの変更を行なってい
た.また、近年通信コマンドによりソフトウェア・チェ
ンジが行なわれるようになったが5この場合も指定され
たソフトウエアのみで長時間又は1個の文書を作成する
ことしかできなかった. しかしながら、現在の文書作成においては、プリンタ制
御装置内の異種の処理ソフトウエアを利用して1つの文
書を作成することや、ネットワーク上につながれた1台
のプリンタを利用して多種のアプリケーションを使用で
きることが望まれている.この場合、レーザプリンタ等
に異種のソフトウェア用データ列がソフトウェア・チェ
ンジコマンドを区切りとして、連続してホストインター
フェースを経由して送られて来る. このようなデータ列が送られるレーザプリンタ等のイン
プットバッファ制御は、ホストコンピュータから受信し
たデータを即時解釈・実行するコマンドデータ、例えば
ソフトウエアにより異なるがシステムリセットコマンド
やステイタス要求コマンド等と、コマンドに続くその他
のデータ.印字用のテキストデータ,イメージデータ等
とに分離する.そして、コマンドデータは即時解釈・実
行し、コマンドデータ以外のデータはいったんインプッ
トバファに格納してからプリンタの印刷速度に合せて次
の制御へ送り出すようにしている.また、ソフトエア・
チェンジ要求コマンドは通常即時解釈されず、インプッ
トバッファに格納される.何故なら、ソフトウェア・チ
ェンジ要求コマンド以前にインプットバッファに入れら
れたデータはソフトウェア・チェンジ以前の異種のソフ
トウエア用のデータ例であるためソフトウェア・チェン
ジ111Iに処理すべきである.このため、ソフトウェ
ア・チェンジ要求コマンドも通常データと同様にインブ
ッ1−バッファに入れられる.このインプットバッファ
に格納されているデータをインタブリ夕で逐次読み出し
て解釈しながら実行しているときに、ソフトウェア・チ
ェンジ要求コマンドを認識すると、指定されたソフトウ
エアの初期化ルーチンヘジャンブし、変更されたソフト
ウエアに全体の制御をゆだねる.そして、新たなソフト
ウエアはシステムを初期化した後、ホストコンピュータ
との通信作業を開始してプリント動作を行なう. [発明が解決しようとする課題] 」二記レーザプリンタ等のインプットバッファ制御にお
いて、インプットバッファに格納されたソフトウェア・
チェンジ要求コマンドを認識してシステムを初期化する
際、インプットパッファも初期化してしまう.このため
、変換前のソフトウエアによってインプットバッファに
格納されたソフトウェア・チェンジ要求コマンド後のデ
ータも消されてしまい、データロスになってしまうとい
う不具合があった. この不具合を解消するために、ホストコンピュータ側に
バッファを設けたりして、ソフトウェア・チェンジ要求
コマンド退出直後のデータ送出に遅延時間を設定し、プ
リンタ制御装置のソフトウェア・チェンジが完了後にデ
ータ通信を再開するような方法が採られているものもあ
る.しかしながら、ホスト側にバツファを設ける方法は
使用するプリンタのソフトウェア・チェンジ要求コマン
ドを認識する手段と、ソフトウェア・チェンジ時の待ち
時間制御手段等をホスト側に付加することが必要になり
、ホスト側のシステム構築がわずらわしくなる.また上
記のような手段をホスト側に講じられないものも多くあ
り、データロスの不具合を完全に解消することは困難で
あつた. そこで、ソフトウェア・チェンジの際のデータロス対策
をプリンタ内で行なうことが必要になるが、従来はその
対策をプリンタ内で行なうことができなかった。その理
由は、■即時処理コマンド等はインプットバッファに入
れられず、ソフトウェア・チェンジ要求コマンドがイン
プットバッファに格納されることと、■ソフトウェア・
チェンジ直後のシステム初期化とともにインプットバッ
ファも初期化されてしまうことによる。後者の理由によ
る不都合は、インプットバッファ領域を前もって異なる
ソフトウエア毎に限定し、ソフトウェア・チェンジ後も
そのまま利用できるようにすることで解決することがで
きる。しかしながら前者の理由による不都合は単純には
解決することができない. すなわち、インプットバッファに格納されたデータを逐
次読み出し制御展開するルーチンがソフトウェア・チェ
ンジ要求コマンドを認識するまではソフトウェア・チェ
ンジが実行される前のソフトウエアによって即時処理コ
マンドが実行される。このため、ソフトウェア・チェン
ジ要求コマンドを受信後に送られたデータが、ソフトウ
ェア・チェンジ後のソフトウエアでは即時処理すべきで
なく通常処理用のデータである場合、このデータがソフ
I・ウエア・チェンジ前のソフトウエアにより即時処理
されてデータロスとなる可能性がある。最チ顕著な例と
しては、ソフトウェア・チェンジ要求コマンドの後にイ
メージデータ転送がある場合である.イメージデータは
あらゆるデータコードが予測されるため、イメージデー
タ転送コマンドは即時処理コマンドと同等の処理を受け
、それに続くイメージデータ分だけは即時処理を行なわ
ない。即時処理コマンドやイメージデータ転送コマンド
を各ソフトウエアで統一できれば良いが、既存のプリン
タのエミュレーションとして使用されるソフトウエアで
は統一することは不可能である.このためソフトウェア
・チェンジ前と後のソフトウエアでイメージデータであ
るかどうかの認識が異なった場合、ソフトウェア・チェ
ンジ後のソフトウエア用のイメージデータがソフトウェ
ア・チェンジ前のソフトウェアにより即時処理され、結
果的にデータロスとなり得る.このデータロスを解消す
るために即時処理コマンドもインプットバッファに格納
したり、インプットバッファ制御の処理ルーチンを各ソ
フトウエア分だけ持つことも考えられるが、プログラム
が膨大になるという短所があった. この発明はかかる短所を解決するためになされたもので
あり、ホスト側にバッファを付加することなしにソフト
ウェア・チェンジの際のデータロスを無くすることがで
きるプリンタ制御装置を得ることを目的とするものであ
る. [課題を解決するための手段〕 この発明に係るプリンタ制御装置は、ソフトウェア・チ
ェンジ要求があったときに、ホストコンピュータに送信
ストップ要求が行なわれてからホストコンピュータが実
際にデータ送信を中断するまでの間にホストコンピュー
タから送られるデータを格納する補助バッファを備えた
ことを特徴とする. [作用] この発明においては、ソフトウェア・チェンジ要求コマ
ンドがプリンタに送られた後に送られるデータを補助バ
ッファに格納し、ソフトウェア・チェンジ要求コマンド
を認識してシステムを初期化し、インプットバッファち
初期化するときに補助バッファに格納したしたデータを
保仔する。
[Prior Art] In order to cover the computer network, which was conventionally supported by a number of different types of printers, with as few printers as possible, it is intended to change the commands of different types of printers by a method called software change. ing. Conventional printer control devices do not have the ability to change software using commands communicated with a host computer, and software changes are made using a control panel attached to the printer itself. In addition, in recent years, software changes have been made using communication commands5, but in this case too, it was only possible to create a long period of time or a single document using only the specified software. However, in current document creation, a single document is created using different types of processing software within a printer control device, and various applications are used using a single printer connected on a network. It is hoped that this will be possible. In this case, data strings for different types of software are continuously sent to the laser printer, etc. via the host interface, with software change commands as delimiters. The input buffer control of laser printers and other devices to which such data strings are sent is based on command data that immediately interprets and executes the data received from the host computer, such as system reset commands and status request commands, etc., depending on the software. Other data that follows. Separate into text data for printing, image data, etc. Command data is immediately interpreted and executed, and data other than command data is temporarily stored in the input buffer and then sent to the next control in accordance with the printing speed of the printer. Also, soft air
Change request commands are usually not interpreted immediately, but are stored in the input buffer. This is because the data entered into the input buffer before the software change request command is an example of data for a different type of software before the software change, and should be processed in the software change 111I. Therefore, the software change request command is also stored in the input buffer in the same way as normal data. When the software change request command is recognized while executing the data stored in this input buffer while sequentially reading and interpreting the data stored in the input buffer, the software jumps to the specified software initialization routine and changes are made. The entire control is entrusted to the developed software. After the new software initializes the system, it starts communicating with the host computer and prints. [Problem to be Solved by the Invention] In the input buffer control of a laser printer, etc., the software stored in the input buffer
When initializing the system by recognizing a change request command, the input buffer is also initialized. As a result, the data stored in the input buffer by the pre-conversion software after the software change request command was also erased, resulting in data loss. In order to resolve this problem, a buffer is provided on the host computer side, a delay time is set for data transmission immediately after the software change request command is exited, and data communication is resumed after the software change of the printer control device is completed. Some methods have been adopted to do so. However, with the method of providing a buffer on the host side, it is necessary to add a means to recognize the software change request command of the printer being used and a means to control the waiting time at the time of software change to the host side. System construction becomes troublesome. In addition, there are many cases in which the host cannot take the above measures, making it difficult to completely eliminate data loss problems. Therefore, it is necessary to take measures against data loss in the printer during software changes, but conventionally it has not been possible to take measures within the printer. The reason for this is that ■ Immediate processing commands etc. are not stored in the input buffer, but software change request commands are stored in the input buffer, and ■ Software change request commands are stored in the input buffer.
This is because the input buffer is also initialized when the system is initialized immediately after the change. The inconvenience caused by the latter reason can be solved by limiting the input buffer area for each different software in advance so that it can be used as is even after a software change. However, the inconvenience caused by the former reason cannot be solved simply. That is, until the routine that sequentially reads and controls data stored in the input buffer recognizes the software change request command, the immediate processing command is executed by the software before the software change is executed. Therefore, if the data sent after receiving the software change request command is data that should not be immediately processed by the software after the software change and is for normal processing, this data will be processed before the software change. There is a possibility that the data will be processed immediately by the software, resulting in data loss. The most obvious example is when there is an image data transfer after a software change request command. Since any data code is predicted for image data, the image data transfer command is processed in the same manner as the immediate processing command, and only the image data that follows is not immediately processed. It would be good if the immediate processing commands and image data transfer commands could be unified in each software, but this is not possible with software used as emulations of existing printers. Therefore, if the recognition of whether or not it is image data differs between the software before and after the software change, the image data for the software after the software change will be immediately processed by the software before the software change, and the resulting This may result in data loss. In order to eliminate this data loss, it is possible to store immediate processing commands in the input buffer or to have input buffer control processing routines for each piece of software, but this has the disadvantage of making the program huge. This invention has been made to solve these shortcomings, and aims to provide a printer control device that can eliminate data loss during software changes without adding a buffer to the host side. It is something. [Means for Solving the Problems] The printer control device according to the present invention is capable of controlling data transmission from when a request for a software change is made to a host computer to stop sending data until the host computer actually stops sending data. It is characterized by having an auxiliary buffer for storing data sent from the host computer between the two. [Operation] In this invention, data sent after a software change request command is sent to the printer is stored in an auxiliary buffer, the system is initialized by recognizing the software change request command, and the input buffer is initialized. Sometimes the data stored in the auxiliary buffer is saved.

[実施例] 第1図はこの発明の一実施例に係るレーザプリンタの構
成を示すブロック図である.図において、1は文字情報
や画像情報を送り出すホストコンピュータ、2はレーザ
プリンタの制御部、3は制御部2により生成された画像
イメージ情報を用紙にプリントするエンジン、4はフォ
ントカード等に記録された外部情報を入力する外部情報
入力部である。
[Embodiment] FIG. 1 is a block diagram showing the configuration of a laser printer according to an embodiment of the present invention. In the figure, 1 is a host computer that sends out character information and image information, 2 is a control unit of a laser printer, 3 is an engine that prints image information generated by control unit 2 onto paper, and 4 is a computer that is recorded on a font card, etc. This is an external information input section for inputting external information.

制御部2はホストインターフェース5.CPU6.プロ
グラムROM7.RAM8.フォントRAM9.不揮発
性RAMIO,変倍処理部11.操作パネル12,才ブ
ションインターフェース13,ビデオ制御部l4及びエ
ンジン制御部l5を有し、各々CPUバスl6により接
続されている。また、ビデオ制御部14とエンジン制御
部l5はレーザプリンタビデオインターフェース(以下
,LPVIという)17を介してエンジン3に接続され
ている. ホストインターフェース5はホストコンピュータlと制
御部2間を接続するためのインターフェースであり、R
S232C.セントロニクス仕様準拠等からなる. CPU6は16ビット又は36ビットからなりデータ処
理部6lやイメージ情報処理部62を有し、制御部2全
体を統括的に制御する中央処理装置である.プログラム
ROM7はCPU6を制御するためのマイクロコードが
格納されている.RAM8は大容量のランダムアクセス
メモリであり、システムメモリ81.  リングバッフ
ァからなるインプットバッファ82.補助バッファ83
と、ページバッファ84.フォントファイル85.マイ
クロファイル86.イメージファイル87.プリントコ
ントロールファイル88及びビデオバッファ89等に使
用される. フォントROM9はホストコンピュータlからホストイ
ンターフェース3を経由して送られてくる文字情報をイ
メージ情報に変換するためのフォントデータが格納され
ている。不揮発性RAM10は電源オン後のプリンタの
動作状態を制御するための情報が格納されている。
The control unit 2 includes a host interface 5. CPU6. Program ROM7. RAM8. Font RAM9. Non-volatile RAMIO, scaling processing unit 11. It has an operation panel 12, an interface 13, a video control section 14, and an engine control section 15, which are connected to each other by a CPU bus 16. Further, the video control unit 14 and the engine control unit 15 are connected to the engine 3 via a laser printer video interface (hereinafter referred to as LPVI) 17. The host interface 5 is an interface for connecting between the host computer l and the control unit 2, and
S232C. Compliant with Centronics specifications, etc. The CPU 6 is a 16-bit or 36-bit central processing unit that has a data processing section 6l and an image information processing section 62, and controls the entire control section 2 in an integrated manner. The program ROM 7 stores microcode for controlling the CPU 6. RAM8 is a large capacity random access memory, and system memory 81. Input buffer 82 consisting of a ring buffer. Auxiliary buffer 83
and page buffer 84. Font file 85. Microfile 86. Image file 87. Used for print control file 88, video buffer 89, etc. The font ROM 9 stores font data for converting character information sent from the host computer 1 via the host interface 3 into image information. The nonvolatile RAM 10 stores information for controlling the operating state of the printer after the power is turned on.

変倍処理部11は画像イメージ情報の拡大縮小処理を行
なう.ビデオ制御部l4はRAM8のビデオバッファに
CPU6のバス幅(16ビット又は32ビット)で記憶
されている画像データをシリアルに変換し、LPVI1
7を経由してエンジン3に送る.エンジン制御部15は
LPVIl7を経由し双方向シリアル信号によりエンジ
ン3の状態を検知したり、コマンドを送り出してエンジ
ン3をIIJ御する. まず、上記のように構成されたレーザプリンタの動作の
概要を、第2図のデータの処理の流れに対する各メモリ
の関係を示すブロック図を参照して説明する. ホストコンピュータlから送られてくるデータはホスト
インターフェース5のデータ格納処理部5lを経由して
直接又は補助バッファ83に一時的に格納された後、イ
ンプットバッファ82に蓄えられる.このインブッ1・
バッファ82に格納されたデータはCPU6のデータ処
理部6lにより取り出され、データの種類に応じてRA
M8のメモリエリアに登録される。すなわち、用紙搬送
経路の指定.プリント枚数指定等のプリントシーケンス
制{卸情報はプリントコントロールファイル88に登録
し、印字データと印字位置の関係等ページのレイアウト
情報はページバッファ84に、イメージ情報はイメージ
ファイル87に、ダウンロードフォントはフォントファ
イル85に、オーバレイ情報等はマイクロファイル86
にそれぞれ登録される. CPU6のイメージ情報処理部62はページバッフ78
4の内容にしたがってイメージファイル87.フォント
ファイル85及びフォントROM9の内容を読み出して
ビデオバッファ89に展開する.このビデオバッファ8
9に1頁分の印字データが展開されるとエンジン制御部
l5はプリントコントロールファイル88の内容にした
がいLPVIl7を経由してエンジン3を起動する.エ
ンジン3が画像記録タイミングになるとビデオバッファ
89に展開されたビデオデータなビデオ制御部l2とL
PVI17を経由してエンジン3に送り、送られたビデ
オデータをエンジン3で印字用紙に印字する. 次に、上記処理動作においてインプットバッツァ82と
補助バッファ83にデータを格納する場合の動作と、イ
ンプットバッファ82と補助バッフ783とからデータ
を読み出す場合の動作を第3図〜第5図のフローチャー
トを参照して説明する. データ格納処理部5lでデータを格納するときは、第3
図に示すように、ホストコンピュータlから制御部2に
データが送られてくると、ホストインターフェース5の
データ格納処理部5lが起動され(ステップS301)
、データ送信毎にホストコンピュータlにプリンタの制
御部2かもデータ送信ストップ要求中か否かを判断する
(スチップS302),そして2データ送信ス1・ツブ
要求中でないときには、送られたデータが現在実行中の
ソフトウエアに対するソフトウェア・チェンジ要求コマ
ンドに一致しているかどうかをデータ格納処理部5lで
判断する、(ステップS303).送られたデータがソ
フトウェア・チェンジ要求コマンドであると認識すると
ホストコンピュータlに対してデータ送信ストップ要求
を出す(ステップS304)。
The scaling processing unit 11 performs scaling processing of image information. The video control unit 14 serially converts the image data stored in the video buffer of the RAM 8 with the bus width (16 bits or 32 bits) of the CPU 6, and
7 to engine 3. The engine control unit 15 detects the state of the engine 3 via a bidirectional serial signal via the LP VI17, and controls the engine 3 by sending commands. First, an overview of the operation of the laser printer configured as described above will be explained with reference to the block diagram shown in FIG. 2 showing the relationship of each memory to the flow of data processing. Data sent from the host computer 1 is stored directly or temporarily in the auxiliary buffer 83 via the data storage processing section 5l of the host interface 5, and then stored in the input buffer 82. This imbut 1.
The data stored in the buffer 82 is taken out by the data processing unit 6l of the CPU 6, and is sent to the RA according to the type of data.
It is registered in the memory area of M8. In other words, specifying the paper transport path. Print sequence system such as specifying the number of prints {Wholesale information is registered in the print control file 88, page layout information such as the relationship between print data and print position is stored in the page buffer 84, image information is stored in the image file 87, and downloaded fonts are stored in the font File 85 contains overlay information, etc., and microfile 86
are registered respectively. The image information processing unit 62 of the CPU 6 uses a page buffer 78
Image file 87 according to the contents of 4. The contents of the font file 85 and font ROM 9 are read and expanded into the video buffer 89. This video buffer 8
When one page's worth of print data is developed in 9, the engine control unit 15 starts the engine 3 via the LPVI 17 according to the contents of the print control file 88. When the engine 3 reaches the image recording timing, the video data developed in the video buffer 89 is stored in the video control units l2 and L.
The video data is sent to the engine 3 via the PVI 17, and the sent video data is printed on printing paper by the engine 3. Next, in the above processing operation, the operation when storing data in the input buffer 82 and the auxiliary buffer 83, and the operation when reading data from the input buffer 82 and the auxiliary buffer 783 are explained in the flowcharts of FIGS. 3 to 5. This will be explained with reference to. When storing data in the data storage processing section 5l, the third
As shown in the figure, when data is sent from the host computer l to the control unit 2, the data storage processing unit 5l of the host interface 5 is activated (step S301).
For each data transmission, the printer control unit 2 also determines whether the host computer 1 is requesting to stop data transmission (step S302). The data storage processing unit 5l determines whether the command matches the software change request command for the software being executed (step S303). When recognizing that the sent data is a software change request command, it issues a data transmission stop request to the host computer l (step S304).

また、ホストコンピュータlにデータ送信ストップ要求
中であるときには、そのストップ要求がソフトウェア・
チェンジ要求によるちのであるか否かを判断する(ステ
ップS305)。そして、データ送信ストップ要求中で
なく送られたデータがソフトウェア・チェンジ要求コマ
ンドでないとき、あるいはデータ送信ストップ要求中で
あるが、そのストップ要求がソフトウェア・チェンジ要
求によるものでないときには、送られたデータが即時処
理コマンドか否かを判断し(ステン7”S306).即
時処理コマンドのときには即時処理を実行する(ステッ
プS307)  また、即時処理コマンドでないときに
はインプットバッファ(82)の記憶容量に空きがある
か否かを判断し(ステップ3308) 、インプットバ
ッファ(82)の記憶容量に空きがあるときには送られ
たデータをインプットバッファ(82)に格納する(ス
テップS309)。またインプットバッファ(82)に
空きがないときには、ホストコンピュータlにデータ送
信ストップ要求を出す(ステップS310). 一方、ホストコンピュータlに対するデータ送信ストッ
プ要求がソフトウェア・チェンジ要求によるものである
ときには、データ送信ストップ要求後送られるデータを
補助バッファ83に格納する(ステップS311).こ
のため、補助バッファ83はホストコンピュータlにデ
ータ送信ストップ要求を行なってから、ホストコンピュ
ータ1がその要求を認識して実際にデータ送信を中断す
るまでの間に送ってしまうデータを格納できる容量を最
低限有している.すなわち、セントロニクスインターフ
ェースのようにハードウエアによりデータ送信ストップ
を制御できるインターフェースにおいてはホストコンピ
ュータl側の応答は速いが、IIS232Gのプロトコ
ル制御の場合、要求に対する応答に遅延があるため、こ
れに対処するためである. このようにして格納されたデータをCPUSのデータ処
理゜部6lがインプットバッファ82から順次取り出し
て解釈・実行する. この場合は、第4図のフローチャートに示すように、ま
ずデータ処理部6lはインプットバッファ82にデータ
が有るか否かを判断する(ステップS41).この判断
の結果、インブトバッファ82にデータが有るときには
、インプットバッファ82から順次データを読み出す(
ステップS43).この読み出したデータがソフトウェ
ア・チェンジ要求コマンドか否かを判断し(ステップS
44),ソフトウェア・チェンジ要求でないときには、
各データによる処理を実行する(ステップS45).ま
た、読み出したデータがソフトウェア・チェンジ要求で
あるときには、全制御を要求されたソフトウエアに移行
する(ステップS45).そして、移行先のソフトウエ
アは補助バッファ83の未処理データを保護しながらシ
ステムを初期化し、インプットバッファ82も初期化す
る(ステップ346).その後、データ処理部6lは再
びインプットバッファ82のデータ有無を判断し(ステ
ップS41)  インプットバッファ82にデータが無
いことを確認してから補助バッファ処理ルーチンに移行
し(ステップS47)、補助バッファ83内のデータを
インプットバッファ82に転送して上記処理と同様な処
理を行なう。そして、すべてデータの解釈・実行が完了
したら処理を終了する(ステップS48).上記補助バ
ッファ処理ルーチンは第5図に示すフローチャートによ
り行なわれる.データ処理部6lがインプットバッファ
82内のデータを読み出し解釈・実行しているときに、
ソフトウェア・チェンジ要求コマンドを認識すると、シ
ステムを初期化した後に、補助バッファ83にデータが
有るか否かを判断する(ステップS5 1).補肋バッ
ファ83にデータが有るときには補助バッファ83から
データを読み出す(ステップS52).この読み出した
データが即時処理データか否かを判断し(ステップS5
3)、即時処理データであるときには即時処理を行ない
(ステップS54).その後引続き補助バッファ83か
らデータを読み出す.また、補助バッファ83から読み
出したデータが即時処理データでないときには、そのデ
ータをインプットバッファに格納する(ステップS55
).そして、補助バッファ83内のデータをすべて読み
出した後に処理を終了する.(ステップ356).一方
、補助バッファ83にデータが無いときには、ホストコ
ンピュータlにデータ送信ストップ袈求中が否かを判断
し(ステップS57).データ送信ストップ要求中であ
ったら、ホストコンピュータlにデータ送信可能を通知
して処理を終了する(ステップ358), [発明の効果] この発明は以上説明したように、ソフトウェア・チェン
ジ要求コマンドがプリンタに送られた後に送られるデー
タを補助バツファに格納し、ソフトウェア・チェンジ要
求コマンドを認識してシステムを初期化してインプット
バッファも初期化するときに補助バツファに格納したし
たデータを保存するようにしたので、ソフトウェア・チ
ェンジ要求コマンドを区切りとして処理されるデータを
分離することができるから、ソフトウェア・チェンジ後
のソフトウエア用データをソフトウェア・チェンジ前の
ソフトウエアが即時処理することにより発生するデータ
ロスを防止することができる. また、プリンタ制御装置のRAMに補助バツファを追加
し、この補助バツファの処理プログラムを追加するだけ
ですむから、従来のソフトウエアプログラムの全体構造
をくずすことなしにデータロスを回避することができる
Also, if a data transmission stop request is being made to the host computer, the stop request is
It is determined whether the request is due to a change request (step S305). Then, if the data sent is not a request to stop data transmission and the sent data is not a software change request command, or if the data transmission stop request is in progress but the stop request is not due to a software change request, the sent data is Determine whether or not it is an immediate processing command (Step 7" S306). If it is an immediate processing command, execute immediate processing (step S307). Also, if it is not an immediate processing command, check whether there is free space in the storage capacity of the input buffer (82). It is determined whether or not (step 3308), and if there is free space in the storage capacity of the input buffer (82), the sent data is stored in the input buffer (82) (step S309). If not, issue a data transmission stop request to host computer l (step S310). On the other hand, if the data transmission stop request to host computer l is due to a software change request, the data sent after the data transmission stop request is sent to the auxiliary buffer. 83 (step S311).For this reason, the auxiliary buffer 83 requests the host computer 1 to stop data transmission until the host computer 1 recognizes the request and actually interrupts data transmission. It has a minimum capacity to store the data to be sent.In other words, in interfaces such as the Centronics interface that can control data transmission stop using hardware, the response from the host computer side is fast, but the IIS232G protocol control In this case, there is a delay in the response to the request, so this is to deal with this.The data processing unit 6l of the CPU sequentially retrieves the data stored in this way from the input buffer 82, interprets and executes it. As shown in the flowchart of FIG. 4, the data processing unit 6l first determines whether or not there is data in the input buffer 82 (step S41).As a result of this determination, if there is data in the input buffer 82, , sequentially reads data from the input buffer 82 (
Step S43). It is determined whether this read data is a software change request command (step S
44), When it is not a software change request,
Processing is performed using each data (step S45). If the read data is a software change request, all control is transferred to the requested software (step S45). The destination software then initializes the system while protecting the unprocessed data in the auxiliary buffer 83, and also initializes the input buffer 82 (step 346). Thereafter, the data processing unit 6l again determines the presence or absence of data in the input buffer 82 (step S41), and after confirming that there is no data in the input buffer 82, moves to the auxiliary buffer processing routine (step S47). The data is transferred to the input buffer 82 and the same processing as described above is performed. Then, when all the data has been interpreted and executed, the process ends (step S48). The above-mentioned auxiliary buffer processing routine is carried out according to the flowchart shown in FIG. When the data processing unit 6l reads, interprets, and executes the data in the input buffer 82,
When the software change request command is recognized, after initializing the system, it is determined whether there is data in the auxiliary buffer 83 (step S51). When there is data in the auxiliary buffer 83, the data is read from the auxiliary buffer 83 (step S52). It is determined whether the read data is immediate processing data (step S5).
3) If the data is immediate processing data, immediate processing is performed (step S54). Thereafter, data is read out from the auxiliary buffer 83. Further, when the data read from the auxiliary buffer 83 is not immediate processing data, the data is stored in the input buffer (step S55).
). After all the data in the auxiliary buffer 83 is read out, the process ends. (Step 356). On the other hand, if there is no data in the auxiliary buffer 83, it is determined whether the host computer 1 is being requested to stop data transmission (step S57). If a data transmission stop request is in progress, the process is terminated by notifying the host computer that data transmission is possible (step 358). The data sent after being sent to the auxiliary buffer is stored in the auxiliary buffer, and when the software change request command is recognized, the system is initialized, and the input buffer is also initialized, the data stored in the auxiliary buffer is saved. Therefore, the data to be processed can be separated using the software change request command as a delimiter, so data loss that occurs when the software before the software change immediately processes data for the software after the software change can be avoided. It can be prevented. Furthermore, since it is only necessary to add an auxiliary buffer to the RAM of the printer control device and add a processing program for this auxiliary buffer, data loss can be avoided without destroying the overall structure of the conventional software program.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はこの発明の実施例に係るレーザブリン夕の構成
を示すブロック図、第2図は上記実施例のデータ処理の
流れに対する各メモリの関係を示すブロック図、第3図
は上記実施例によりインプットバッファと補助バッファ
にデータ格納するときの動作を示すフローチャート、第
4図はインプットバッファからデータを読み出すときの
動作を示すフローチャート、第5図は補助バッファから
データを読み出すときの動作を示すフローチャートであ
る. l・・・・ホストコンピュータ,2・・・・制御部、3
・・・・エンジン、5・・・・ホストインターフェース
、5l・・・・データ格納処理部、6・・・・cpu,
6l・・・・データ処理部、8・・・・RAM,82・
・・・インプットバッファ、83・・・・補助バッファ
FIG. 1 is a block diagram showing the configuration of a laser printer according to an embodiment of the present invention, FIG. 2 is a block diagram showing the relationship of each memory to the data processing flow of the above embodiment, and FIG. 3 is a block diagram showing the relationship of each memory to the data processing flow of the above embodiment. 4 is a flowchart showing the operation when data is stored in the input buffer and the auxiliary buffer, FIG. 4 is a flowchart showing the operation when reading data from the input buffer, and FIG. 5 is a flowchart showing the operation when reading data from the auxiliary buffer. It is. l...Host computer, 2...Control unit, 3
...Engine, 5...Host interface, 5l...Data storage processing unit, 6...CPU,
6l...Data processing unit, 8...RAM, 82...
...Input buffer, 83...Auxiliary buffer.

Claims (1)

【特許請求の範囲】[Claims]  ホストコンピュータからのデータをホストインターフ
ェースを介して受信してインプットバッファに一時的に
格納し、格納したデータから画像を作成して印字するプ
リンタ装置において、ソフトウェア・チェンジ要求があ
ったときに、ホストコンピュータに送信ストップ要求が
行なわれてからホストコンピュータがデータ送信を中断
するまでの間にホストコンピュータから送られるデータ
を格納する補助バッファを備えたことを特徴とするプリ
ンタ制御装置。
In a printer device that receives data from a host computer via a host interface, temporarily stores it in an input buffer, and creates and prints an image from the stored data, when a software change request is received, the host computer 1. A printer control device comprising: an auxiliary buffer for storing data sent from a host computer after a transmission stop request is made until the host computer interrupts data transmission.
JP1304989A 1989-11-25 1989-11-25 Printer control device Expired - Lifetime JP2844538B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1304989A JP2844538B2 (en) 1989-11-25 1989-11-25 Printer control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1304989A JP2844538B2 (en) 1989-11-25 1989-11-25 Printer control device

Publications (2)

Publication Number Publication Date
JPH03166620A true JPH03166620A (en) 1991-07-18
JP2844538B2 JP2844538B2 (en) 1999-01-06

Family

ID=17939734

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1304989A Expired - Lifetime JP2844538B2 (en) 1989-11-25 1989-11-25 Printer control device

Country Status (1)

Country Link
JP (1) JP2844538B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001319069A (en) * 2000-05-12 2001-11-16 Melco Inc File conversion system, web server, file converting method, and medium with recorded file converting program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001319069A (en) * 2000-05-12 2001-11-16 Melco Inc File conversion system, web server, file converting method, and medium with recorded file converting program

Also Published As

Publication number Publication date
JP2844538B2 (en) 1999-01-06

Similar Documents

Publication Publication Date Title
JP3209102B2 (en) Print system, printer driver and printer
US6476938B1 (en) Print control system and method
KR100572443B1 (en) Output device, its control method and program storage medium
JPH03166620A (en) Printer controller
JP2000187579A (en) Printing system, printer, printing control method and recording medium
JP3209911B2 (en) Print control device and data processing method of print control device
JPH0330977A (en) Page printer control system
JP4400097B2 (en) Printing apparatus, printing control method, program, and recording medium
JP3129679B2 (en) Printer
US6629155B1 (en) Data input/output method and apparatus and storage medium
JPH10309835A (en) Page printer
JP3083251B2 (en) Page printer
JPH0728612A (en) Printer
JP3024362B2 (en) Printer
KR100565792B1 (en) Font data recording method for print
JPH0796642A (en) Controller for printer
JP2872144B2 (en) Printing equipment
JPH04294417A (en) Information processor and its control method
JPH054387A (en) Printer
JPH06106794A (en) Print controller
JPH01263063A (en) Printing controller
JPH04340152A (en) Printer control method for network
JPH031224A (en) Input/output system
JP2000347823A (en) Host base print system, host computer, printer, printing method, and storage medium
JP2000250724A (en) Printing system