JPH02286381A - Printer controller - Google Patents

Printer controller

Info

Publication number
JPH02286381A
JPH02286381A JP10725289A JP10725289A JPH02286381A JP H02286381 A JPH02286381 A JP H02286381A JP 10725289 A JP10725289 A JP 10725289A JP 10725289 A JP10725289 A JP 10725289A JP H02286381 A JPH02286381 A JP H02286381A
Authority
JP
Japan
Prior art keywords
page
information
printing
hcb
block
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.)
Pending
Application number
JP10725289A
Other languages
Japanese (ja)
Inventor
Masahiro Nakanishi
昌弘 中西
Keiji Izumi
恵治 泉
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.)
Olympus Corp
Original Assignee
Olympus Optical 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 Olympus Optical Co Ltd filed Critical Olympus Optical Co Ltd
Priority to JP10725289A priority Critical patent/JPH02286381A/en
Publication of JPH02286381A publication Critical patent/JPH02286381A/en
Pending legal-status Critical Current

Links

Landscapes

  • Dot-Matrix Printers And Others (AREA)
  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

PURPOSE:To easily return environment to the head of an arbitrary page when abnormality is generated by mounting an environmental data memory means storing the environmental data at the start time of the printing of each page corresponding to the page to a printer controller. CONSTITUTION:Data blocks are prepared in a number wherein 2 is added to the product of the number of papers capable of being present in a printer at once during a series of printing operations in a printing process and the max. number of pages printable on one paper, that is, a number wherein 2 is added to the max. number of pages present in the printer at once during printing operation. These data blocks are ones for storing various environmental data necessary for printing and constituted of one environmental data block (EIB) of a current successively renewing environmental data at the time of the analysis and execution of each ESC sequence, one area temporarily retracting the EIB of the current at the time of the generation of abnormality and an environmental data block for storing the environmental data at the point of time when the editing of each page is started.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、コンピュータより転送されるコード化され
た印字情報を受は取り、内部のメモリに印字情報を蓄積
し、用紙1ペ一ジ分に対応する量のデータが受信される
と、1ペ一ジ分の情報を印字出力する、いわゆるページ
・プリンタに関し、更に詳細には、コンピュータより転
送されたホスト・コマンドによって変更される、印字の
ための環境条件の管理方式を向上させたページ・プリン
タに関する。
[Detailed Description of the Invention] [Industrial Application Field] This invention receives coded print information transferred from a computer, stores the print information in internal memory, and prints the information for one page of paper. It relates to so-called page printers that print out one page of information when an amount of data corresponding to This invention relates to a page printer with an improved environmental condition management method.

〔従来の技術〕[Conventional technology]

一般にページ・プリンタにおいて、ホスト・コンピュー
タよりプリンタに転送されるASCIIコードで表現さ
れる印字情報は、実際に印字される通常文字コード(2
1H〜7EH)と、CR(復帰)、LP(改行)等の1
バイトの制御コード(00H〜20H,7FH)とに大
別される。ところがASCIIコード等の1バイトによ
る情報だけでは、プリンタ諸条件の変更等の複雑な制御
ができないため、前記制御コードの中のESCコード(
IBM)をコマンド・ヘッダとして複数バイトで構成さ
れたコマンド群(以降ESCシーケンスと呼ぶ)を用意
し、印字における文字間隔や、行間隔の設定、マージン
・オフセット等の!ページ内の印字位置制御等、印字を
実行するための環境条件の制御を行っている。
In general, in page printers, the print information expressed in ASCII code transferred from the host computer to the printer is the normal character code (2
1H to 7EH), CR (return), LP (line feed), etc.
It is roughly divided into byte control codes (00H to 20H, 7FH). However, complex control such as changing printer conditions cannot be performed using only one-byte information such as an ASCII code, so the ESC code (
IBM) is used as a command header to prepare a command group (hereinafter referred to as an ESC sequence) consisting of multiple bytes, and set character spacing in printing, line spacing, margin offset, etc.! It controls the environmental conditions for printing, such as controlling the printing position within the page.

また通常ページ・プリンタは、ホスト・コンピュータよ
りデータを受信するとイメージ・メモリ上に画像を展開
すると同時に、内部のホスト・コマンド・バッファ(以
下HCBと呼ぶ)にデータを蓄積し、印字中に用紙の紙
詰まり等の異常が発生したときに、ホスト・コンピュー
タに対してデータの再送信を要求することなく、前記H
CBに蓄積された印字情報を読み出し、この情報に基づ
いて再印字することによって、ジャム・リカバリを行っ
ている。このような場合に印字情報が通常の文字コード
だけであれば、前記HCHにおける各ページの先頭位置
を表す情報を記憶しておけば、異常の発生したページか
ら再印字することは容易である。ところが、この印字情
報のページの途中に対応す、る位置に、例えば印字する
文字の間隔を変更する等のESCシーケンスが含まれて
いると、ページの先頭と最後とでは異なった文字間隔で
印字が行われる。このように途中で印字環境が変更され
た場合、紙詰まりを起こした用紙に対して正しくジャム
・リカバリを行うためには、印字再開に当たって、現在
の文字間隔等の環境条件を、全て最初に当該用紙の画像
形成を開始した環境条件に戻す必要がある。
In addition, when a normal page printer receives data from a host computer, it develops the image on the image memory, and at the same time stores the data in an internal host command buffer (hereinafter referred to as HCB), and stores the data on the paper while printing. When an abnormality such as a paper jam occurs, the above-mentioned H
Jam recovery is performed by reading the print information stored in the CB and reprinting based on this information. In such a case, if the printing information is only a normal character code, it is easy to reprint from the page where the abnormality has occurred by storing information representing the beginning position of each page in the HCH. However, if the printing information contains an ESC sequence that changes the spacing between characters to be printed at a position corresponding to the middle of the page, the spacing between characters will be different at the beginning and end of the page. will be held. If the printing environment is changed during the process like this, in order to correctly perform jam recovery for paper that has caused a paper jam, it is necessary to first check all environmental conditions such as the current character spacing before restarting printing. It is necessary to return to the environmental conditions that started image formation on the paper.

このような任意のページ先頭への復帰を行うリワインド
処理の方法として、従来は無条件に一連のジ四ブの先頭
からデータを全て読み直す方法が実施されていたが、こ
の方法には不要部分まで全て読み直すといった無駄が多
く、この無駄を改善すべく、環境変更に伴って変更内容
のみを順次記憶し、異常発生時にこの順次記憶された情
報を後戻りすることによって、環境を復帰する方法が特
公昭62−20577号で提案されている。
Conventionally, the method of rewind processing to return to the top of an arbitrary page was to unconditionally reread all data from the beginning of a series of pages, but this method There is a lot of waste in rereading everything, and in order to improve this waste, Tokko Sho proposed a method to restore the environment by sequentially storing only the changed contents as the environment changes, and going back to this sequentially stored information when an abnormality occurs. No. 62-20577.

また近年のプリンタには用紙両面への印字を行うものが
ある。このような両面印字を行うプリンタ・エンジンに
おいては、例えば第15図に示すように、用紙搬送及び
用紙反転のための構造上、印字された用紙を排出すると
、印字されたページの順序が逆転して排出してしまう構
成のものがある。
Furthermore, some recent printers print on both sides of paper. In a printer engine that performs double-sided printing, for example, as shown in Figure 15, due to the structure for paper transport and paper reversal, when the printed paper is ejected, the order of the printed pages is reversed. There are some configurations that allow it to be ejected.

すなわち、第15図において、給紙トレイ1から給紙さ
れた用紙は画像形成部2において、その第1の面に画像
が形成され、定着部3を通って搬送ローラ部4の前進ロ
ーラ対を介して、−旦反転ガイドを備えた用紙反転部5
に導入される0次いで搬送ローラ部4の反転ローラ対を
介して用紙を反転搬送経路6に反転搬送し、タイミング
をとって再度画像形成部2に向けて搬送する。そして画
像形成部2において第2の面に画像が形成されたのち、
用紙は定着部3及び搬送ローラ部4を通って、排出ロー
ラ7によって用紙排出スタフ力8に排出される。この場
合第2の面を下側にして、順次排出されるため、印字さ
れたページの順序が逆転されることになる。
That is, in FIG. 15, the paper fed from the paper feed tray 1 has an image formed on its first surface in the image forming section 2, passes through the fixing section 3, and passes through the forward roller pair of the conveying roller section 4. A paper reversing unit 5 equipped with a reversing guide through the
Then, the paper is reversely conveyed to the reversing conveyance path 6 via a pair of reversing rollers of the conveying roller section 4, and conveyed again toward the image forming section 2 at the appropriate timing. After an image is formed on the second surface in the image forming section 2,
The paper passes through the fixing section 3 and the conveyance roller section 4, and is ejected by the ejection roller 7 to a paper ejection stuff force 8. In this case, since the pages are sequentially discharged with the second side facing down, the order of the printed pages is reversed.

したがって、かかる構成のプリンタ・エンジンに対して
、印字するためのラスタ・データを転送するためには、
ホスト・コンピュータよす受は取った印字情報をページ
毎に管理し、予めプリンタ・コントローラ内でページ順
を反転した後、ラスタ・データをプリンタ・エンジンに
転送する必要がある。つまりホスト・コンピュータより
、第1ページ、第2ページの順序で情報を受信し、第2
ページ、第1ページの順で印字出力することになる。
Therefore, in order to transfer raster data for printing to a printer engine with such a configuration,
The host computer server must manage the print information for each page, reverse the page order within the printer controller, and then transfer the raster data to the printer engine. In other words, information is received from the host computer in the order of the first page and the second page, and
The first page will be printed out in the order of the first page.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

ところで、上記のような構成のプリンタ・エンジンを用
い、ページ順を反転して印字出力するように構成されて
いるページ・プリンタにおいて、第1ページの途中で文
字間隔等の環境の変更があった場合、最初に印字出力す
る第2ページは、ページ先頭より第1ページ内の環境変
更後の環境を使用して(変更された文字間隔で)印字が
開始され、次に印字出力する第1ページは変更される前
の環境に基づいて(変更前の文字間隔で)印字されなけ
ればならない、更に第1ページの印字出力後には、変更
された環境条件に設定する必要がある。このような場合
、前記の特公昭62−20577号の方法でも使用が可
能であるが、各ページ毎に環境変更記憶の後戻り処理が
必要となり、効率の良い方法とはいえない。
By the way, in a page printer that uses a printer engine with the above configuration and is configured to print out pages in reverse order, there is a change in the environment such as character spacing during the first page. In this case, the second page to be printed out first starts printing from the top of the page using the environment after the environment change in the first page (with the changed character spacing), and then the first page to be printed out. must be printed based on the environment before the change (with the character spacing before the change), and furthermore, after the first page is printed, it is necessary to set the changed environment conditions. In such a case, the method disclosed in Japanese Patent Publication No. Sho 62-20577 can be used, but it is not an efficient method because it requires backtracking of environment change storage for each page.

このページ順反転を実現するための別の方法として、1
ペ一ジ分のラスタ・イメージが格納できる容量のページ
・メモリを2枚用意し、ホスト・コンピュータから印字
情報を受は取りつつラスタ・イメージの画像を各ページ
・メモリ上に形成し、2ペ一ジ分のラスタ・イメージが
そろったところで、ページ順を反転してプリンタ・エン
ジンにラスタ・イメージ・データを転送し、用紙の正常
な排出が終了するまで、この2ページのイメージ・メモ
リを保持することによってジャム・リカバリを行ってい
るものが知られている。
Another method to achieve this page order reversal is 1.
Two page memories with a capacity that can store one page of raster images are prepared, and a raster image is formed on each page memory while receiving and receiving print information from the host computer. When one page of raster images is complete, the page order is reversed, the raster image data is transferred to the printer engine, and these two pages of image memory are retained until the paper is successfully ejected. It is known that jam recovery is performed by doing this.

この方法の利点は、環境変更を管理することなく、表面
及び裏面の画像を形成できるところにある。ところが、
通常A4サイズの画像を300dpiの解像度で記憶す
るためには、1ページ当たり約1Mバイトのメモリが必
要となり、かなり高価なものになってしまう、またラス
タ・イメージを形成した2ページのデータの印字用紙が
正常に排出終了するまで、次の画像形成を開始できない
等の欠点を有している。
The advantage of this method is that front and back images can be formed without managing environmental changes. However,
Normally, in order to store an A4 size image at a resolution of 300 dpi, approximately 1 Mbyte of memory is required per page, making it quite expensive.Also, printing two pages of data forming a raster image This method has drawbacks such as not being able to start forming the next image until the paper has been properly ejected.

本発明は、従来のページ・プリンタにおける上記の問題
点を解決するためになされたもので、異常が発生した際
に容易に任意のページの先頭へ環境を復帰させることが
可能なプリンタ・コントローラを提供することを目的と
する。
The present invention was made in order to solve the above-mentioned problems in conventional page printers, and provides a printer controller that can easily return the environment to the top of any page when an abnormality occurs. The purpose is to provide.

本発明の他の目的は、プリンタ・エンジンへの画像転送
順序に関わらず、各ページ先頭での環境生成をできる限
り少ないメモリ資源で実現できるようにしたプリンタ・
コントローラを提供することにある。
Another object of the present invention is to provide a printer/engine that can generate an environment at the beginning of each page using as few memory resources as possible, regardless of the order in which images are transferred to the printer engine.
The purpose is to provide a controller.

〔課題を解決するための手段及び作用〕上記問題点を解
決するため、本発明は、印字のための環境条件をホスト
・コンピュータからのホスト・コマンドにより変更する
ようにしたプリンタにおいて、プリンタ・コントローラ
に各ページの印字開始時の環境情報をページに対応させ
て記憶する環境情報記憶手段を備えるものである。
[Means and operations for solving the problems] In order to solve the above problems, the present invention provides a printer in which environmental conditions for printing can be changed by a host command from a host computer. The apparatus is provided with an environmental information storage means for storing environmental information at the time of starting printing of each page in correspondence with the page.

このように構成することにより、各ページに対応した印
字開始時の環境情報が記憶され、該環境情報がページ単
位で管理することができるため、所望のページ単位の環
境情報に独立して迅速にアクセスすることが可能となる
。これによりホスト・コンピュータより転送される印字
情報のページ単位の人力順序とプリンタ・エンジンへの
ページ単位の画像転送順序とが異なっていても、各ペー
ジ先頭における環境情報を、少ないメモリ資源で容易に
且つ迅速に再現することができる。またページ単位の環
境情報をアクセスすることにより、用紙の紙詰まり等の
異常発生時のジャム・リカバリ処理やリワインド処理を
、容易に且つ効率的に実行することができる。
With this configuration, the environmental information at the time of printing start corresponding to each page is stored, and this environmental information can be managed on a page-by-page basis, so that the desired page-by-page environmental information can be quickly and independently accessed. It becomes possible to access. As a result, even if the manual page-by-page order of print information transferred from the host computer and the page-by-page image transfer order to the printer engine are different, environmental information at the beginning of each page can be easily stored with less memory resources. And it can be reproduced quickly. Furthermore, by accessing the environment information for each page, it is possible to easily and efficiently perform jam recovery processing and rewind processing when an abnormality such as a paper jam occurs.

〔実施例〕〔Example〕

次に本発明に係るページ・プリンタのコントローラの実
施例について説明する。まず本実施例におけるプリンタ
・エンジン及びコントローラの構成・機能は次に示すよ
うなものである。すなわち、プリンタ、・エンジンは第
15図に示したものと同様に、両面印字において、2シ
ート 4ページの印字情報を、#1.#2.#3.#4
の順序で転送すると、用紙排出スタッカには、#2.#
1.#4、#3のページ順で排紙される機械的構成とす
る。そしてコントローラは上記両面プリントにおけるペ
ージ順の狂いを補正するために、情報転送ページ順序を
$2.$1.#4.$3と自動的に変更するように構成
されている。
Next, an embodiment of a page printer controller according to the present invention will be described. First, the configuration and functions of the printer engine and controller in this embodiment are as follows. That is, the printer/engine prints two sheets of four pages of printed information in the same manner as shown in FIG. 15 in double-sided printing. #2. #3. #4
If the paper is transferred in the order of #2. #
1. The mechanical configuration is such that sheets are ejected in the order of pages #4 and #3. Then, the controller changes the information transfer page order to $2.00 in order to correct the page order error in double-sided printing. $1. #4. It is configured to automatically change to $3.

次に本実施例のハードウェア構成を、第1図に基づいて
説明する0本実施例のプリンタ・コントローラは、その
制御を行うためのCPUを有し、更に該cPUのバスに
は図に示すように下記の要素を接続している。
Next, the hardware configuration of this embodiment will be explained based on FIG. The following elements are connected as shown below.

o  ltllImプログラムを格納した読み出し専用
のプログラム・メモリ 0 各種制御情報の書き込み・読み出しを行うワ・−ク
メモリ Oホスト・コンピュータより印字情報を読み込むための
ホストI/F 0 画像を形成するための補助プロセッサとしてのラス
タ・プロセッサ Oプリンタ・エンジンに対して印字開始等の命令を送信
したり、プリンタ・エンジンの杖態等の情報を受信する
ためのエンジンI/F更に前記ラスタ・プロセッサのバ
スには下記の要素を接続している。
o Read-only program memory that stores the ltllIm program 0 Work memory for writing and reading various control information O Host I/F for reading print information from the host computer 0 Auxiliary processor for forming images An engine I/F for sending commands such as starting printing to the printer engine and receiving information such as the status of the printer engine.Furthermore, the bus of the raster processor includes the following: Connecting elements.

O各種フォントの形状をビット・マツプで格納するフォ
ント・メモリ Oホスト・コンピュータより転送された文字コード等の
印字情報に従って、前記フォント・メモリのデータを配
列した画像情報や、ホスト・コンピュータより転送され
たビット・イメージ・データを格納し、その後プリンタ
・エンジンにラスタ・スキャン・データを転送するため
のイメージメモリ CPUはホスト・コンピュータより転送された印字情報
を前記ホストI/Fより読み込み、読み込んだ文字コー
ドに対応するフォント・メモリのアドレスと現在のカー
ソル位置に対応するイメージ・メモリのアドレス等の情
報より、前記ラスタ・プロセッサ用の内部コマンドを生
成し、ラスタ・プロセッサに転送する。ラスタ・プロセ
ッサはこの内部コマンドを受けて、フォント・メモリの
データをイメージ・メモリ上に配列し、後のCPUから
の指令によりプリンタ・エンジンにラスタ・スキャン・
データを送出する。
O Font memory that stores the shapes of various fonts in the form of bit maps O Font memory that stores the shapes of various fonts in the form of bitmaps O Font memory that stores the shapes of various fonts in the form of bit maps The image memory CPU stores the bit image data and then transfers the raster scan data to the printer engine. An internal command for the raster processor is generated from information such as a font memory address corresponding to the code and an image memory address corresponding to the current cursor position, and is transferred to the raster processor. The raster processor receives this internal command, arranges the data in the font memory on the image memory, and then sends the raster scan data to the printer engine according to a later command from the CPU.
Send data.

この実施例では、フォント・メモリのデータをイメージ
・メモリに転送する際に、上記の構成でラスタ・プロセ
ッサを使用することによって処理速度を上げているが、
フォント・メモリ及びイメージ・メモリをCPUのバス
に配置し、CPUが直接フォント・メモリのデータをイ
メージ・メモリに書き込む構成としてもよい。
In this embodiment, the processing speed is increased by using the raster processor with the above configuration when transferring the data in the font memory to the image memory.
The font memory and the image memory may be arranged on a CPU bus, and the CPU may directly write data in the font memory to the image memory.

次に実際の動作の説明に先立って、本実施例において使
用する各種制御情報を説明する。
Next, before explaining the actual operation, various control information used in this embodiment will be explained.

まず、第2図に示すような、ホスト・コンピュータより
転送された印字情報を格納するためのバッファとして、
mワードの長さのホスト・コマンド・バッファ(HCB
)・ブロックをn個用意し、各ブロックにそれぞれOか
ら(n−1)までのIDを付与する。各HCBブロック
は、ブロックの先頭の1ワードのブロック間リンク情報
エリアと(m−1)ワードの印字情報を格納・するため
のエリアとで構成される。リンク情報エリアには、当該
HCBブロックだけで、1ページの印字情報の格納が完
結せず、別のHCBブロシクに印字情報の格納を行う際
に、続<HCBブロックの1.D(0〜n−1)を書き
込む、また当1亥HCBフ゛ロックで格納が完結してい
るときには、リンク情報として、−1を書き込むように
なっている。第3図にHCBブロックの連結構成を示す
First, as shown in Figure 2, a buffer is used to store print information transferred from the host computer.
m-word long host command buffer (HCB)
)・Prepare n blocks and give each block an ID from O to (n-1). Each HCB block is composed of an inter-block link information area of one word at the beginning of the block and an area for storing (m-1) words of print information. In the link information area, storage of print information for one page is not completed in the relevant HCB block, and when storing print information in another HCB block, it is necessary to store the print information in the link information area. D (0 to n-1) is written, and when storage is completed in the current HCB block, -1 is written as link information. FIG. 3 shows a connected configuration of HCB blocks.

次に上記のHCB 、iA、の書き込み/読み出し/開
放を管理するために、1個の制御情報エリアとして、H
CBコントロール・ブロックを用意する。
Next, in order to manage writing/reading/opening of the above HCB, iA, H
Prepare the CB control block.

HCBコントロール・ブロックには、次の情報が含まれ
る。
The HCB control block contains the following information:

O書き込み中のHCBブロックのID O書き込み中のHCBブロック先頭からのオフセット値 0 読み出し中のHCBブロックのIDO読み出し中の
HCBブロック先頭からのオフセット値 次に一連の印字動作中に、−時にプリンタ内に印字過程
中として存在し得る用紙枚数と、−枚の用紙に印字し得
る最大ページ数(両面印字が可能な場合は2ページ/用
祇となる)との積に2を加えた数、すなわち印字動作中
に一時にプリンタ内に存在する最大ページ数に2を加え
た数の情報ブロックを用意する。この情報ブロックは印
字に必要な各種の環境情報を格納するための情報ブロッ
クであり、各ESCシーケンス解析・実行時に、逐次環
境情報を更新するためのカレントの環境情報ブロック(
E I B) 1個と、異常の発生時に前記カレントの
BIBを一時退避するエリア1個、及び各ページの編集
開始時にその時点の環境情報を格納するための、格納用
環境情報ブロックとで構成されている。なおEIBのブ
ロック数を最大ページ数の他に2つ用意しているのは、
上記カレントEIBと退避用エリアのためである。この
ElBの構成例を第4図に示す。
O ID of the HCB block being written O Offset value from the beginning of the HCB block while being written 0 IDO of the HCB block being read Offset value from the beginning of the HCB block being read is the product of the number of sheets of paper that can exist during the printing process and the maximum number of pages that can be printed on - sheets of paper (if double-sided printing is possible, 2 pages/use), plus 2, i.e. During a printing operation, information blocks of the maximum number of pages existing in the printer at one time plus 2 are prepared. This information block is an information block for storing various environmental information necessary for printing, and the current environmental information block (
E I B), one area for temporarily saving the current BIB when an abnormality occurs, and a storage environment information block for storing the environment information at that time when editing each page is started. has been done. In addition to the maximum number of pages, there are two EIB blocks available:
This is for the current EIB and the evacuation area. An example of the configuration of this ElB is shown in FIG.

次に一連の印字動作中に、−時にプリンタ内に印字過程
中として存在し得る用紙枚数と、−枚の用紙に印字し得
る最大ページ数(両面印字が可能な場合は2ページ/用
祇となる)との積、すなわち印字動作中に一時にプリン
タ内に存在する最大ページ数と同じ数の情報ブロックを
用意する。これをページ情報ブロック(P I B)と
呼ぶ、二〇PIBには次の下位制御情報が従属する。す
なわち当該ページと対応する前記HCBの情報、すなわ
ちホスト・コンピュータより転送された当1亥ページを
構成する印字情報が格納されたコマンド・バッファの場
所を示すための情報や、当該ページと対応する前記格納
用EIBの情報、すなわち当該ページの編集開始時の各
種環境情報を当該ページの印字の正常な終了まで格納す
るBIBのIDを示す情報や、更に当該ページに対する
一連の印字のための処理が現在どういう状態にあるかを
示すためのページ状態スイッチとして使用される制御情
報が含まれる。これを更に詳細に列挙すると次のとおり
である。
Next, during a series of printing operations, - the number of sheets of paper that may exist in the printer during the printing process, and the maximum number of pages that can be printed on one sheet of paper (2 pages/use if double-sided printing is possible). Prepare as many information blocks as the product of This is called a page information block (PIB), and the following lower control information is subordinate to the 20PIB. That is, the information of the HCB corresponding to the page, that is, the information indicating the location of the command buffer in which the print information constituting the current page transferred from the host computer is stored, and the information of the HCB corresponding to the page. Information on the storage EIB, that is, information indicating the ID of the BIB that stores various environmental information at the start of editing of the page until the printing of the page ends normally, and processing for a series of printing on the page are currently being performed. Contains control information used as a page state switch to indicate what state the page is in. A more detailed list of these is as follows.

o  HCB開始ブロック10 o  HCB開始ブロック先頭からのオフセット値o 
 HCB終了ブロックID o  HCB終了ブロック先頭からのオフセット値on
個のHCBフ゛ロックそれぞれにおいて、当該ページが
使用しているHCBブロックを示すための、少なくとも
nビットの情報量を持ったフラグ(HCB使用フラグ) 0 当1亥ベージに対応するEIBのIDOページ状態
スイッチ FREE  i開放状態 EDIT  :編集中 EDENDj&W集終了 DSPT  :イメージ形成中 DSEND:イメージ形成終了 RTOE  :エンジンへのラスタ・データ転送中 WAIT  :用紙の排出時 更に一連の印字動作中に、−時にプリンタ内に印字過程
中として存在し得る用紙枚数と同じ数の情報ブロックで
あるシート情報ブロック(S I B)を用意する。こ
のSIBは、下記に示すように、当該ページと対応する
PIBの情報、すなわち当該シートに印字される複数の
ページのID、及び各IDを付与されたページのシート
上の印字位置、すなわち両面印字の際にはシートの第1
面に印字するか第2面に印字するかを示す情報として、
印字形態に応じて各ページのシート上の印字位置を管理
するための情報を格納するために使用される。
o HCB start block 10 o Offset value from the beginning of HCB start block o
HCB end block ID o Offset value from the beginning of HCB end block on
A flag (HCB use flag) with at least n bits of information to indicate the HCB block used by the page in each HCB block 0 IDO page state switch of the EIB corresponding to the page FREE i open state EDIT: Editing EDENDj&W collection completed DSPT: Image forming DSEND: Image formation finished RTOE: Raster data being transferred to the engine WAIT: When the paper is ejected, and during a series of printing operations, inside the printer at - Sheet information blocks (S I B), which are the same number of information blocks as the number of sheets of paper that can exist during the printing process, are prepared. As shown below, this SIB contains the information of the PIB corresponding to the page, that is, the IDs of multiple pages printed on the sheet, and the printing position on the sheet of the page assigned each ID, that is, double-sided printing. In this case, the first sheet
As information indicating whether to print on the first side or the second side,
It is used to store information for managing the print position on the sheet of each page according to the print format.

更に当該シート及びSrBが現在どういう状態にあるか
を示すためのシート状態スイッチとして使用される。
Furthermore, it is used as a seat state switch to indicate the current state of the sheet and SrB.

0 当該シートを構成するPIBの数(片面印字−1/
両面印字=2) O第1プリントのPIBのID O第1プリントのシート上の位置情報 0 第2プリントのPIBのID O第2プリントのシート上の位置情報 0 シート状態スイッチ FREE  :開放状態 EDIT  :編集中 EDEND :編集終了 WAIT  :用紙の排出時 SIB、PIB、HCB、EIBの管理体系を第5図に
示す。
0 Number of PIBs constituting the sheet (single-sided printing - 1/
Double-sided printing = 2) ID of PIB of first print O Position information on sheet of first print 0 ID of PIB of second print O Information of position on sheet of second print 0 Sheet state switch FREE: Open state EDIT : Editing EDEND : Editing finished WAIT : When paper is ejected The management system of SIB, PIB, HCB, and EIB is shown in FIG.

更に上記SOBの数と同じ長さを有するFIFO構成の
データ・ブロックであるシート・シーケンス・キュー(
S S Q)を用意する。このSSQは各ページの印字
順序を制御するために使用されるデータ・ブロックであ
り、各シート毎の績簗が終了すると当該シートのID、
すなわちSIBのIDが順次書き込まれるようになって
いる。したがって、このSSQは未処理のシート出力順
番を示しており、このSSQを参照することにより、コ
ントローラ内の各処理モジュールが時分割で各自所定の
処理動作を行えるようになっている。
Furthermore, a sheet sequence queue (which is a FIFO-structured data block having the same length as the number of SOBs mentioned above)
Prepare S S Q). This SSQ is a data block used to control the printing order of each page, and when the printing of each sheet is completed, the ID of the sheet,
That is, the SIB IDs are written sequentially. Therefore, this SSQ indicates the output order of unprocessed sheets, and by referring to this SSQ, each processing module in the controller can perform its own predetermined processing operation in a time-sharing manner.

更に制御を実行するにあたり、8ビツトの文字コードそ
れぞれに対応した各処理モジュールのアドレスを格納す
るのに充分な長さを有するデータ・ブロックを1単位と
して、このデータ・ブロックを、文字コードのそれぞれ
の処理モジュールのアドレスを格納するために文字コー
ド順に256個連結した、下記の処理アドレス・テーブ
ルを複数個用意する。更に、現在使用中の処理アドレス
テーブルを示すための処理テーブル・ポインタを用意す
る。
Furthermore, when performing control, one unit is a data block that is long enough to store the address of each processing module corresponding to each 8-bit character code, and this data block is In order to store the addresses of processing modules, a plurality of processing address tables shown below are prepared, in which 256 processing address tables are concatenated in the order of character codes. Furthermore, a processing table pointer is prepared to indicate the processing address table currently in use.

Oホスト・コンピュータより最初に人力された文字コー
ド別の処理モジュールのアドレスを格納スル、ベーシッ
ク処理アドレス・テーブル(第6図参照) 0 コマンド・ヘッダであるESCコードが入力された
後に、サポートするESCシーケンス体系に基づいて、
コマンド・ヘッダのESCコードに続く文字コード別に
それぞれの下位処理モジュールに移行するための、前記
同様に文字コード順に256個連結された第1ESC処
理アドレス・テーブル 0 更に引き続く文字コード別に、各処理モジュールに
移行するための第2ESC処理アドレス・テーブル 0 サポートするESCシーケンス体系により決定する
個数nの、同様の第1ESC処理アドレス・テーブル 次に本実施例において、印字が正常に終了するまでの処
理を、第7図に示したホスト・コマンド別処理フローチ
ャートに沿って説明する。
0 Basic processing address table (see Figure 6) that stores the addresses of processing modules by character code that are manually input from the host computer 0 After the ESC code that is the command header is input, the supporting ESC Based on the sequence system,
The first ESC processing address table 0 is made up of 256 concatenated addresses in the order of character codes in the same manner as described above, in order to move to each lower processing module according to the character code following the ESC code of the command header. 2nd ESC processing address table for migration 0 A similar 1st ESC processing address table with a number n determined by the supported ESC sequence system Next, in this embodiment, the processing until the printing ends normally is The process will be explained according to the host command-specific processing flowchart shown in FIG.

■ ホスト・コマンドの読み込み ホスト・コンピュータよりデータ・バスにデータが出力
され、同期信号STBによりそのデータが内部のフリッ
プ・フロップにラッチされると、CPUはこのデータを
読み込み内部に取り込み、ホスト・コマンド解析部に処
理を移行する。
■ Reading the host command When data is output from the host computer to the data bus and the data is latched into the internal flip-flop by the synchronization signal STB, the CPU reads this data and takes it into the internal unit, and then executes the host command. Processing is transferred to the analysis section.

■ ホスト・コマンドの解析 ホスト・コマンド解析部は、処理テーブル・ポインタで
指示される処理アドレス・テーブル、ここでは最初に設
定されたベーシック処理アドレス・テーブルを参照し、
入力された文字コードそれぞれに対応した更に下位の処
理モジュールに制御を移行する。
■ Host command analysis The host command analysis section refers to the processing address table pointed to by the processing table pointer, in this case the basic processing address table that was set first.
Control is transferred to a lower processing module corresponding to each input character code.

入力されたデータが通常の印字文字コード(21H〜7
8H)である場合、文字コードに対応するフォントのイ
メージ・データをイメージ・メモリ上に展開するための
、各文字コードに共通のモジュールに移行し、更に次項
のページの獲得のための処理へ移ル。
The input data is a normal printing character code (21H to 7).
8H), move to a module common to each character code to expand the image data of the font corresponding to the character code onto the image memory, and then move to the process for acquiring the page described in the next section. Le.

入力されたデータがESCコード以外の制御コードであ
る場合、コード別にそれぞれの処理モジエールに移行し
、当該制御コードがカレントのカーソル位置に変更を生
じるコードであれば、次項のページの獲得のための処理
へ移る。
If the input data is a control code other than the ESC code, it will move to the respective processing module for each code, and if the control code is a code that causes a change in the current cursor position, it will be transferred to the processing module for obtaining the page described in the next section. Move on to processing.

当該制御コードがカレントのカーソル位置に変更を生じ
ないコードであれば、カレントのEIBの対応する情報
を更新した後、次項のページの獲得のための処理をスキ
ップし、ホスト・コマンドの格納の処理に移行する。
If the control code does not change the current cursor position, after updating the corresponding information in the current EIB, skip the page acquisition process described in the next section, and execute the host command storage process. to move to.

入力されたデータがESCコードの場合、処理テーブル
・ポインタに第1ESC処理アドレス・テーブルを設定
し、再度ホスト・コマンドの読み込みの処理を行う、1
バイトのデータの読み込みに応じて処理テーブル・ポイ
ンタを第2ESC処理アドレス・テーブル、第3ESC
処理アドレス・テーブルへと遷移させて順次データを取
り込み、一連のESCシーケンスが終了した後、対応す
るESCシーケンス処理モジュールへと制御を移行する
。それぞれのESCシーケンス処理モジエールは、この
一連のコマンドを解析し、当該コマンドがカレントのカ
ーソル位置に変更を生じるコードであれば次項のページ
の獲得のための処理へ移る。当該コマンドが文字間隔の
設定等のカレントのカーソル位置に変更を生じないコー
ドであれば、カレントのEIBの対応する情報を更新し
た後、次項のページの獲得のための処理をスキップし、
ホスト・コマンドの格納の処理に移行する。
If the input data is an ESC code, set the first ESC processing address table in the processing table pointer and perform the process of reading the host command again.1.
In response to reading byte data, the processing table pointer is transferred to the second ESC processing address table and the third ESC.
After a transition is made to a processing address table and data is sequentially fetched, and a series of ESC sequences are completed, control is transferred to a corresponding ESC sequence processing module. Each ESC sequence processing module analyzes this series of commands, and if the command is a code that changes the current cursor position, it moves on to the next page acquisition process. If the command is a code that does not cause changes to the current cursor position, such as character spacing settings, after updating the corresponding information in the current EIB, skip the process for acquiring the page in the next section,
Move on to host command storage processing.

■ ページ/ホスト・コマンド・バッファ/シートの獲
得 次にページ/ホスト・コマンド・バッファ/シートの獲
得処理を第8図に沿って説明する。
(2) Acquisition of page/host command buffer/sheet Next, the process of acquiring page/host command buffer/sheet will be explained with reference to FIG.

CPUは現在編集状態中のページがあるかどうか、すな
わちページ状態スイッチがEDITであるPIBがある
かどうかを調べる。EDIT中のページがあれば、ベー
ジ/ホスト・コマンド・バッファ/シートの獲得処理は
行わない。
The CPU checks whether there is a page currently in the editing state, ie, whether there is a PIB whose page state switch is EDIT. If there is a page being EDIT, no page/host command buffer/sheet acquisition processing is performed.

EDIT中のページがない場合、CPUはまずページ状
態スイッチがFREEであるPIBを探し、当該PIB
を獲得する。
If there is no page being edited, the CPU first searches for a PIB whose page status switch is FREE, and
obtain.

次にCPUは獲得したPIBの初期化処理として次の作
業を行う。
Next, the CPU performs the following work as initialization processing of the acquired PIB.

0 当該PIBのページ状態スイッチをEDITにする
0 Set the page state switch of the PIB to EDIT.

o  HCBコントロール・ブロックより現在のHCB
の書き込ろ場所を読み出し、当該PIBのHCB開始ブ
ロックID及び開始オフセットを設定する。
o The current HCB from the HCB control block
Read the write location of the PIB and set the HCB start block ID and start offset of the PIB.

o  HCB終了ブロックID及びオフセットをクリア
する。
o Clear HCB end block ID and offset.

o  HCB使用フラグの中の、書き込み用に獲得した
HCHのIDに対応するビットをセットする。
o Set the bit in the HCB use flag that corresponds to the ID of the HCH acquired for writing.

PIB及びHCBが獲得されると、現在編集状態中のシ
ートがあるかどうか、すなわちシート状態スイッチがE
DITであるSIBがあるかどうかを調べる。EDIT
中のシートがなければ、CPUは続いてシートの獲得の
ために次の処理を行う。
When the PIB and HCB are acquired, check whether there is a sheet currently being edited, that is, the sheet status switch is set to E.
Check if there is a SIB that is a DIT. EDIT
If there is no seat inside, the CPU continues with the following processing to obtain a seat.

0 シート状態スイッチがFREEである31Bを探し
、当該SIBを獲得する。
0 Search for 31B whose seat status switch is FREE and acquire the SIB.

0 当該SIBのシート状態スイッチをEDITにする
0 Set the sheet status switch of the SIB to EDIT.

O現在のモード(片面印字/両面印字)に応じて、当該
シートを構成するPIB数、すなわち当該シート1枚に
印字する情報のページ単位の数(片面印字−1/両面印
字−2)を設定する。
O Depending on the current mode (single-sided printing/double-sided printing), set the number of PIBs that make up the sheet, that is, the number of pages of information to be printed on one sheet (single-sided printing-1/double-sided printing-2). do.

続いて獲得されたSIBの対応する場所に、当該シート
に従属するPIBのID、及び当該ページの当該シート
上の印字位置情報(本実施例では表面印字か、裏面印字
かを示す情報)を書き込む。
Next, the ID of the PIB subordinate to the sheet and the printing position information on the sheet of the page (in this example, information indicating whether it is printed on the front side or the back side) are written in the corresponding location of the acquired SIB. .

最後にCPUは、開放されている格納用EfBの1つに
カレントのEIBの情報を全て格納し、前記PIB内の
格納用EIBのIDをセットする。このカレントEIB
の情報を格納用EIBに格納する処理において、カレン
トEIBの情報をそのまま格納用EIBに格納してもよ
いし、カレン)BIBの情報を圧縮した形式で格納用E
IBに格納してもよい。
Finally, the CPU stores all the information of the current EIB in one of the released storage EFBs, and sets the ID of the storage EIB in the PIB. This current EIB
In the process of storing information in the current EIB in the storage EIB, the information in the current EIB may be stored as is in the storage EIB, or the information in the current EIB may be stored in the storage EIB in a compressed format.
It may also be stored in the IB.

以上の動作でベージ/ホスト・コマンド・バッファ/シ
ートが獲得される。
With the above operations, a page/host command buffer/sheet is acquired.

■ ホスト・コマンド別の処理 上記の処理に続いて、人力されたホスト・コマンド別に
次の処理を行う(第7図参照)入力されたデータが通常
の印字文字コード(2LH〜7EH)である場合、当該
文字コードに対応したフォント・メモリのアドレス、前
記カレントEIBに登録されたX方向(通常プリンタ・
エンジンにラスタ・イメージ・データを転送する際の主
走査方向)と、これに直行するY方向それぞれのカーソ
ル値で決定される、イメージ・メモリ上のアドレス(当
該文字の印字位置)等の情報より、前記ラスタ・プロセ
ッサ用のイメージ展開用内部コードを生成する等の処理
を実行し、次の文字の印字開始位置を前記カレントEI
B内のカーソル値に設定する。
■ Processing for each host command Following the above processing, perform the following processing for each manually entered host command (see Figure 7).If the input data is a normal print character code (2LH to 7EH) , the font memory address corresponding to the character code, the X direction registered in the current EIB (normal printer
Based on information such as the address on the image memory (the print position of the character), which is determined by the cursor values in the main scanning direction (when transferring raster image data to the engine) and the Y direction perpendicular to this. , executes processing such as generating an internal code for image development for the raster processor, and sets the printing start position of the next character to the current EI.
Set to the cursor value in B.

入力されたデータがESCコード以外の制御nコードで
ある場合、例えば当該制御コードがLF(改行)コード
の時は、前記カレントBIBに登録されたY方向のカー
ソル値に、カレントE!Bに登録された行間隔の値を加
えるというような、フォント・データの展開等の処理は
行わず環境情報を更新する処理のみを実行する。
When the input data is a control n code other than an ESC code, for example, when the control code is an LF (line feed) code, the current E! Processing such as adding the registered line spacing value to B or expanding the font data is not performed, but only processing for updating the environment information is performed.

入力されたデータがESCコードの場合、各ESCシー
ケンス別に環境情報の更新等の処理を実行する。
If the input data is an ESC code, processing such as updating of environmental information is executed for each ESC sequence.

上記のホスト・コマンド別のそれぞれの処理を行った後
、次のホスト・コマンドの格納処理を行う。
After each of the above processes for each host command is performed, the storage process for the next host command is performed.

■ ホスト・コマンドの格納処理 CPUは、現在ページが獲得されているかどうかを調べ
る。獲得されていない場合は、入力されたホスト・コマ
ンドはカレントのカーソル位置に変更を生じないコマン
ドであり、前項の各コマンド別処理において前記カレン
トのEIB内の各種環境情報を更新するだけで、当該ホ
スト・コマンドに対する処理を終了する。ページが獲得
されていると、続いて以下のホスト・コマンドの格納処
理を行う。
■ Host command storage processing The CPU checks whether a page is currently acquired. If it has not been acquired, the input host command is a command that does not change the current cursor position, and in the processing for each command described in the previous section, the relevant environment information in the current EIB is simply updated. Terminates processing for the host command. Once the page has been acquired, the following host command storage process is performed.

CPUは、HCBコントロール・ブロックヨリ、書き込
み用のHCBブロックID、HCBブロック・オフセッ
トを読み出す0次に両ポインタで示される場所にホスト
・コンピュータから受は取った印字情報を書き込み、H
CBブロック・オフセット値に1を加える。続いて更新
されたオフセット値をチエツクし、この値が1個のHC
Bブロックの長さを越えていると、CPUは下記の手順
で新たなHCBブロックの獲得処理を行う。
The CPU reads the HCB control block, the HCB block ID for writing, and the HCB block offset.The CPU then writes the print information received from the host computer to the location indicated by both pointers, and writes the HCB block ID and HCB block offset for writing.
Add 1 to the CB block offset value. Next, check the updated offset value, and if this value is one HC
If the length of the B block is exceeded, the CPU acquires a new HCB block using the following procedure.

CPUは第9図に示すように、全てのPIBのHCB使
用フラグの論理和を求め、現在開放されているHCBの
IDを求める。このIDを現在書き込み中のHCBブロ
ック先頭の、HCBブロック・リンク情報エリアに書き
込むことによって、これまで書き込んでいたHCBブロ
ックの連結光を明らかにする0次にHCBブロックのH
CBブロックID及びオフセット値を、新たに獲得した
HCBブロックに基づき更新する。更に現在編集中のペ
ージのPIB内のHCB使用フラグを更新する。
As shown in FIG. 9, the CPU calculates the logical sum of the HCB use flags of all PIBs and calculates the ID of the currently released HCB. By writing this ID in the HCB block link information area at the beginning of the HCB block currently being written, the H of the 0th order HCB block will be revealed.
Update the CB block ID and offset value based on the newly acquired HCB block. Furthermore, the HCB use flag in the PIB of the page currently being edited is updated.

■ ページ/シート終了処理 CPUは、ホスト・コンピュータより改ページコマンド
(FF)が転送されるか、改行コマンド(L F)によ
り1ページの許容行数を越えるまで、ここまでの処理を
繰り返し、その後下記の手順で当該ページの終了処理を
行う。
■ Page/sheet end processing The CPU repeats the processing up to this point until the page feed command (FF) is transferred from the host computer or the line feed command (L F) exceeds the allowable number of lines for one page. Follow the steps below to close the page.

0 当1亥ページのPIBのページ状態スイッチをED
ENDにする。
0 ED the PIB page status switch of the current page
Make it END.

0 当該ページのPIBのHCB終了ブロックID及び
HCB終了ブロック・オフセットを書き込む。
0 Writes the HCB end block ID and HCB end block offset of the PIB of the page.

次にCPUは、当該ページの終了により現在のシートが
終了したかどうか、すなわち片面/両面プリント等のモ
ードによりて、現在のシートに必要とするページが全て
終了したかどうかを調べる。終了していない場合は、こ
こまでの処理を全てのページが終了するまで繰り返し、
その後下記の手順で当該シートの終了処理を行う。
Next, the CPU checks whether the current sheet has ended due to the end of the page, that is, whether all the pages required for the current sheet have been completed depending on the mode such as single-sided/double-sided printing. If it is not finished, repeat the process up to this point until all pages are finished.
After that, the end processing for the sheet is performed according to the following procedure.

0 当該シートのSIBのIDをSSQに登録する。0 Register the SIB ID of the sheet in SSQ.

0 当該シートのSIBのシート状態をEDENDにす
る。
0 Set the SIB sheet state of the relevant sheet to EDEND.

■ イメージ・データの形成・転送処理CPUは、前の
ページのイメージ転送等のためのイメージ・メモリの専
有が終了し、イメージ・メモリが開放されていると、前
記SIB内のページ位置情報を参照し、当該シートの第
1面に印字すべきページの10を検出する。続いて検出
されたページのPIBのページ状態スイッチをDSPT
にセットし、イメージ・メモリ上にフォント・イメージ
等の展開を行う、全てのデータの展開処理が終了すると
、続いてCPUは対応するページのPIBのページ状態
スイッチをDSENDにセットし、プリンタ・エンジン
からの要求に基づいて、形成したタスク・イメージ・デ
ータをプリンタ・エンジンに転送する。1画面分のタス
ク・イメージ・データの転送が終了すると、続いてCP
Uは対応するシート及びページの各状態スイッチをWA
ITにセットし、プリンタ・エンジンからの用紙の正常
な排出を待つ。
■ Image data formation/transfer processing When the exclusive use of the image memory for image transfer of the previous page is completed and the image memory is released, the CPU refers to the page position information in the SIB. Then, page 10 to be printed on the first side of the sheet is detected. Next, set the page state switch of the PIB of the detected page to DSPT.
When all data has been developed, the CPU sets the PIB page state switch of the corresponding page to DSEND, and then develops fonts, images, etc. on the image memory. The formed task image data is transferred to the printer engine based on a request from the printer engine. When the transfer of task image data for one screen is completed, the CP
U is WA for each state switch of the corresponding sheet and page.
Set it in the IT and wait for the paper to exit normally from the printer engine.

実際にはイメージ・メモリが開放されていると、あるペ
ージに対するホスト・コマンドを受けてイメージ展開用
の内部コマンドを生成する処理と、生成された当該ペー
ジの内部コマンドに従ってイメージ・メモリ上にフォン
ト・イメージを形成する処理が、マルチ・タスク処理と
して時分割で行われている。また、エンジンに対するラ
スタ・イメージ・データの転送中にも、次のページに対
するイメージ展開用の内部コマンドを生成する処理が、
時分割で行われている。
In reality, when the image memory is released, the process of receiving a host command for a certain page and generating an internal command for image expansion, and then storing the fonts on the image memory according to the generated internal command for the page. The process of forming an image is performed in a time-sharing manner as multi-task processing. Also, while raster image data is being transferred to the engine, the process of generating the internal command for image expansion for the next page is
It is done on a time-sharing basis.

■ シート/ページ/ホスト・コマンド・バッファ開放
処理 プリンタ・エンジン内の用紙への画像形成が終了し、用
紙が正常に排出されると、CPUは下記の手順でシート
ページ、ホスト・コマンド・バッファの開放処理を行う
■ Sheet/page/host command buffer release processing When the image formation on the paper in the printer engine is completed and the paper is normally ejected, the CPU releases the sheet page and host command buffer using the following procedure. Perform release processing.

o  SSQよりデータを取り出し排出されたシートの
SIBのIDを検出する。
o Extract data from SSQ and detect SIB ID of the ejected sheet.

0 当該シートのSIBのシート状態スイッチをFRE
Eにセットする。
0 Set the SIB sheet status switch of the relevant sheet to FRE.
Set to E.

0 当該シートのSIBのPIB情報より従属する全て
のページに対し、下記の手順でページの開放処理を行う
0 Perform page release processing using the following procedure for all pages subordinate to the PIB information of the SIB of the sheet.

00  当該ページのPIBのページ状態スイッチをF
REEにセットする。
00 Set the page state switch of PIB of the page to F
Set to REE.

oo  当該ページのPIBの対応するHCB使用フラ
グをリセットする。
oo Reset the corresponding HCB usage flag of the PIB of the page.

以上の手順でプリント・モードとして片面印字が選択さ
れ、ホスト・コンピュータより入力された印字情報の、
用紙への印字が正常に終了する。
With the above steps, single-sided printing is selected as the print mode, and the printing information input from the host computer is
Printing on paper completes normally.

ここまでの処理の大きな流れを第10図に示す。FIG. 10 shows the general flow of the processing up to this point.

片面印字において、ホスト・コンピュータよりデータが
転送されてから印字された用紙が正常に排出されるまで
の間の、用紙の搬送態様及び前記PIB、SIB、SS
Qの状態遷移を第11図に示す、なお第11図において
、数字はページ及びシート順位を示している。
In single-sided printing, the paper conveyance mode and the above PIB, SIB, SS from the time data is transferred from the host computer until the printed paper is normally ejected.
The state transition of Q is shown in FIG. 11. In FIG. 11, numbers indicate page and sheet ranks.

次に異常発生時に、ホスト・コンピュータに対してデー
タの再転送を要求することなく、ホスト・コマンド・バ
ッファからデータを読み出し、自動的に再印字を行う場
合について、第12図のフローチャートに基づいて説明
する。なお、前記の一連の処理が実行され、プリンタ・
エンジンに対してイメージ・データの転送が終了した後
、プリンタ・エンジン内で用紙の紙詰まり等の異常が発
生した場合を想定する。
Next, when an error occurs, data is read from the host command buffer and automatically reprinted without requesting the host computer to retransmit the data, based on the flowchart in Figure 12. explain. Note that the above series of processes is executed and the printer
Assume that an abnormality such as a paper jam occurs in the printer engine after the image data has been transferred to the engine.

プリンタ・エンジンは用紙の紙詰まり等の異常を検出す
ると、プリンタ・コントローラに対して第1図の制御情
報用エンジンI/Fを用いて、異常の発生を伝える。プ
リンタ・コントローラはこの情報を受けて、下記の手順
でジャム・リカバリを実行する。
When the printer engine detects an abnormality such as a paper jam, it notifies the printer controller of the occurrence of the abnormality using the control information engine I/F shown in FIG. The printer controller receives this information and executes jam recovery according to the following steps.

■ ジャム・リカバリ開始 CPUは現在実行されているホスト・コマンドに対する
各種処理を一時中断し、カレントのEIBをEIB−時
退避用のエリアに格納する。
- Jam recovery start The CPU temporarily suspends various processes for the host command currently being executed, and stores the current EIB in the EIB-time save area.

続いてCPUはSSQを参照し、プリンタ・エンジン内
で用紙搬送中のシートの5IB(7)10を検出する。
Next, the CPU refers to the SSQ and detects 5IB(7)10 of the sheet being conveyed within the printer engine.

複数のSIBのIDが登録されている時には、各SIB
について次の処理を繰り返す。
When multiple SIB IDs are registered, each SIB
Repeat the following process for

■ シート情報のリカバリ 当該シートのシート状態スイッチをEDITにセットし
、SIB内のPIB情報より従属する全てのページに対
し下記の処理を繰り返し行シ 0 ぺ、−ジ情報のリカバリ開始 当該ページのPIBのページ状態スイッチをEDITに
セットする6次に当1亥PIBのEIB情報を参照し、
当該ページに対応する環境情報を格納用EIBから読み
出し、カレントEIBにセットする。この処理で、変更
された一連の環境情報を逐次後戻りすることなく、全て
の環境情報を、当該ページに対応するホスト・コマンド
が最初にプリンタに転送された時と同じ情況に戻すこと
になる。更に当該ページのPIBのHCB開始ブロック
10、HCB開始ブロック・オフセットの情報を、HC
Bコントロール・ブロックの読み出し用のHCBブロッ
ク10.HCBブロック・オフセットにセットする。
■ Recovery of sheet information Set the sheet status switch of the sheet to EDIT, and repeat the following process for all pages subordinate to the PIB information in the SIB.Start recovery of row information.PIB of the page Set the page state switch to EDIT.6 Next, refer to the EIB information of the current PIB,
The environment information corresponding to the page is read from the storage EIB and set in the current EIB. This process returns all environmental information to the same state it was in when the host command corresponding to the page was first transferred to the printer, without having to go back through the set of changed environmental information. Furthermore, information on the HCB start block 10 and HCB start block offset of the PIB of the page is stored in the HC
HCB block 10 for reading B control block. Set to HCB block offset.

o  HCBからのホスト・コマンドの読み込み通常の
印字中はホスト・コンピュータI/Fのデータ・ラッチ
より印字情報を読み取り編集を行っていたが、ジャム・
リカバリ中はラッチの代わりに、HCBコントロール・
ブロック内の読み出し用のHCBブロックID。
o Loading host commands from HCB During normal printing, print information is read and edited from the data latch of the host computer I/F, but when a jam occurs
During recovery, instead of the latch, the HCB control
HCB block ID for reading within the block.

HCBブロック・オフセットで示されるアドレスから1
バイトずつホスト・コマンドの読み出しを行い、読み出
したホスト・コマンドに基づいて編集作業を行う。
1 from the address indicated by the HCB block offset
Host commands are read out byte by byte, and editing operations are performed based on the read host commands.

次にHCBコントロール・ブロック内の読み出し用のH
CBブロック・オフセット値に1を加える。そして更新
されたオフセット値をチエツクし、この値が1個のHC
Bブロックの長さを越えていると、CPUは当該ブロッ
クのHCBブロック・リンク情報を参照することによっ
て連結するHCBブロックを認識し、新たな)(CBブ
ロックのIDをHCBコントロール・ブロック内の読み
出し用のHCBブロックIDに登録すると共に、読み出
し用のHCBブロック・オフセットを初期化する。
Next, read H in the HCB control block.
Add 1 to the CB block offset value. Then check the updated offset value and check if this value is one HC.
If the length of the B block is exceeded, the CPU recognizes the HCB block to be connected by referring to the HCB block link information of the block, and reads the ID of the new CB block in the HCB control block. At the same time, the HCB block offset for reading is initialized.

通常の印字中にはホスト・コンピュータよす改ページコ
マンド(F F)が転送されるか、改行コマンド(L 
F)により1ページの許容行数を越えることで、当該ペ
ージの終了処理へと移行したが、ジャム・リカバリ中は
、HCBコントロール・ブロック内の読み出し用のHC
BブロックID、HCBブロック・オフセットの両値が
、当該ページのPIBのHCB終了ブロック10.HC
Bブロック・オフセットの情報と一致することによって
、当該ページの終了を検知する。
During normal printing, the host computer transfers a page feed command (F F) or a line feed command (L
F), when the allowable number of lines for one page was exceeded, the page transitioned to end processing, but during jam recovery, the HC for reading in the HCB control block
Both the B block ID and HCB block offset values are the HCB end block 10. of the PIB of the page. H.C.
By matching the B block offset information, the end of the page is detected.

■ ページのリカバリ終了 当該ページのPIBのページ状態スイッチをEDEND
にセットする。
■ End of page recovery Set page state switch of PIB of the page to EDEND
Set to .

以上の処理で、1ページのジャム・リカバリを終了し、
当該SIBに従属する他のページのリカバリ動作に移行
し、同様の処理を繰り返した後、当該ページのSIBの
シート状態スイッチをEDENDにセットする。この後
前記の正常時の処理と同様に、内部コマンドを参照して
イメージ・データを形成し、プリンタ・エンジンへのタ
スク・イメージ・データの転送を行う。
With the above process, one page jam recovery is completed,
After proceeding to the recovery operation of other pages subordinate to the SIB and repeating the same process, the sheet state switch of the SIB of the page is set to EDEND. Thereafter, similar to the normal processing described above, image data is created with reference to internal commands, and the task image data is transferred to the printer engine.

ここまでの処理で1シートのジャム・リカバリが終了す
る。CPUはSSQを参照し、プリンタ・エンジンに異
常が発生した時に用紙を搬送中であった全てのシートに
対して、この処理を繰り返すことによって、異常発生時
のリカバリ処理を終了する。
With the processing up to this point, jam recovery for one sheet is completed. The CPU refers to the SSQ and repeats this process for all the sheets that were being conveyed when the printer engine experienced an abnormality, thereby completing the recovery process when the abnormality occurs.

次にプリント・モードとして両面印字が選択された際に
、コントローラ内でホスト・コンピュータからのページ
単位の印字情報のページ順を反転し、印字を行う場合に
ついて説明する。
Next, a case will be described in which when double-sided printing is selected as the print mode, the page order of print information for each page from the host computer is reversed within the controller and printing is performed.

ホスト・コンピュータからデータを受信すると、片面印
字の時と同様に受は取ったデータを解析し、当該データ
がカーソルの移動を伴うものであれば、ページ/ホスト
・コマンド・バッファを獲得し、引き続いてシートの獲
得処理を行う、シート獲得処理において、両面印字モー
ドの時にはホスト・コンピュータより受けた最初のペー
ジのPIBのIDは、第2プリント用の情報として、前
記SIBに登録される。その後各コマンド別にカレント
のEIBの更新、イメージ展開用内部コマンドの生成等
のそれぞれの処理を実行する。
When data is received from the host computer, the receiver parses the data as it does for single-sided printing, acquires the page/host command buffer if the data involves cursor movement, and continues printing. In the sheet acquisition process in which the sheet acquisition process is performed, in the duplex printing mode, the ID of the PIB of the first page received from the host computer is registered in the SIB as information for second printing. Thereafter, processes such as updating the current EIB and generating internal commands for image expansion are executed for each command.

ところがこの時、マルチ・タスクで動作しているイメー
ジ・データ形成処理において、現在内部コマンド生成中
のページは第2プリント用のデータとして認識されるた
め、イメージ・メモリ上へのフォント・データの展開は
行われない。
However, at this time, in the image data forming process running in multi-task mode, the page currently generating internal commands is recognized as data for the second print, so the font data is not expanded onto the image memory. will not be carried out.

前記の処理を繰り返し、片面印字モードと同様に、改ペ
ージコマンド(FF)等によりページ/シート終了処理
へと移行し、第1ページに対する編集処理を終了する。
The above process is repeated, and similarly to the single-sided printing mode, a page/sheet end process is performed using a page break command (FF), etc., and the editing process for the first page is ended.

続いてホスト・コンピュータより第2ページ(第1プリ
ント)のデータが転送されると、同様にページ/ホスト
・コマンド・バッファの獲得が行われ、続いて第1プリ
ント用データとして獲得されたPIBのIDがSIBに
登録される。前記の第1ページの編集処理は通常通りに
実行されているため、この時点のカレントEIB内の各
種環境情報は、全て第2ページの編集開始にあたって必
要な値に更新されている。したがって前記と同様にカレ
ントEIBの各種環境情報を格納用EIBに格納し、こ
のIDをPIBに登録する。
Subsequently, when the second page (first print) data is transferred from the host computer, the page/host command buffer is acquired in the same way, and then the PIB acquired as the first print data is transferred. The ID is registered in the SIB. Since the editing process for the first page is being executed as usual, all the various environmental information in the current EIB at this point have been updated to the values necessary to start editing the second page. Therefore, similarly to the above, various environmental information of the current EIB is stored in the storage EIB, and this ID is registered in the PIB.

その後受信した各コマンドに対応したカレントのEIB
の更新、イメージ展開用内部コマンドの生成等のそれぞ
れの処理を実行する。
Current EIB corresponding to each command subsequently received
, update the image, generate internal commands for image deployment, etc.

この第2ページの編集中には、マルチ・タスクで動作し
ているイメージ・データ形成処理において、現在内部コ
マンド生成中のページは第1プリント用のデータとして
認識され、イメージ・メモリが開放されていると、フォ
ント・データの展開等のイメージ・データの形成処理が
行われる。
During the editing of this second page, in the image data forming process running in multi-task mode, the page currently generating internal commands is recognized as data for the first print, and the image memory is released. If so, image data formation processing such as development of font data is performed.

この処理を改ページコマンド(F F)等を受信するま
で繰り返し、表裏両面への処理が終了すると、ページ/
シート終了処理を実行した後、更に生成した第1プリン
ト用内部コマンドによるイメージの形成が全て終了する
と、プリンタ・エンジンに対して、タスク・イメージ・
データを転送する。
This process is repeated until a page feed command (F
After the sheet end process has been executed and all images have been formed using the generated first print internal command, a task image is sent to the printer engine.
Transfer data.

タスク・イメージの転送が終了し、イメージ・メモリが
開放されると、引き続き先に生成した内部コマンドに基
づいて第2プリント用のイメージ・データの形成に処理
を移行する。プリンタ・エンジン内で第1プリントに対
する印字動作が終了し、用紙が13ノンタ・エンジン内
の反転用紙待機位置に達し次の印字のための準備が整う
と、形成した第2ページのイメージ・データをプリンタ
・エンジンに転送する。
When the transfer of the task image is completed and the image memory is released, the process continues to form image data for second printing based on the previously generated internal command. When the printing operation for the first print is completed in the printer engine and the paper reaches the reversal paper waiting position in the 13 nonta engine and is ready for the next printing, the image data of the second page that has been formed is transferred. Transfer to printer engine.

以上の手順で用紙両面に対する画像形成が終了し、用紙
が正常に排出されると、前記の片面印字モードと同様に
シート/ページ/ホスト・コマンド・バッファの開放処
理を実行し、一連の処理が終了する。
When image formation on both sides of the paper is completed using the above steps and the paper is ejected normally, the sheet/page/host command buffer release process is executed in the same way as in the single-sided printing mode, and the series of processes is completed. finish.

両面印字において、ホスト・コンピュータよりデータが
転送されてから印字された用紙が正常に排出されるまで
の間の、用紙の搬送態様及び前記PIB、SIB、SS
Qの状態遷移を第13図に示す0図において、SSQに
おける数字はシート順位を示し、他の数字はホスト・コ
ンピュータから入力されたページ順位を示している。
In double-sided printing, the paper transport mode and the above PIB, SIB, SS from the time data is transferred from the host computer until the printed paper is normally ejected
In Figure 0, which shows the state transition of Q, the numbers in SSQ indicate sheet ranks, and the other numbers indicate page ranks input from the host computer.

なお上記実施例では、各種環境情報を格納するための環
境情報ブロック(E I B)を用意し、各ページの編
集開始時のEIBのIDを示す情報をEIB内に配置し
たものを示したが、第14図のSlB、PIB、HCB
の管理体系を表す図に示すように、各ページの環境情報
ブロック格納エリアを、当該ページのEIB内に配置す
るように構成しても、全く同様な処理動作を行わせるこ
とができる。
Note that in the above embodiment, an environment information block (EIB) is prepared to store various environmental information, and information indicating the ID of the EIB at the time of starting editing of each page is placed in the EIB. , SLB, PIB, HCB in Fig. 14
As shown in the diagram showing the management system, even if the environment information block storage area of each page is arranged in the EIB of the page, exactly the same processing operation can be performed.

〔発明の効果〕〔Effect of the invention〕

以上実施例に基づいて説明したように、本発明によれば
、各ページに対応した印字開始時の環境情報が記憶され
、該環境情報がページ単位で管理することができるため
、所望のページ単位の環境情報に独立して迅速にアクセ
スすることが可能となる。これによりホスト・コンピュ
ータより転送される印字情報のページ単位の入力順序と
プリンタ・エンジンへのページ単位の画像転送順序とが
異なっていても、各ページ先頭における環境情報を、少
ないメモリ資源で容易に且つ迅速に再現することができ
る。またページ単位の環境情報をアクセスすることによ
り、用紙の紙詰まり等の異常発生時のジャム・リカバリ
処理やリワインド処理を、容易に且つ効率的に実行する
ことができる。
As described above based on the embodiments, according to the present invention, environmental information at the time of printing start corresponding to each page is stored, and the environmental information can be managed on a page-by-page basis. environmental information can be accessed independently and quickly. As a result, even if the input order of print information transferred from the host computer on a page-by-page basis and the order of image transfer on a page-by-page basis to the printer engine are different, environmental information at the beginning of each page can be easily stored with less memory resources. And it can be reproduced quickly. Furthermore, by accessing the environment information for each page, it is possible to easily and efficiently perform jam recovery processing and rewind processing when an abnormality such as a paper jam occurs.

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

第1図は、本発明に係るプリンタ・コントローラの一実
施例のハードウェア構成を示すブロック構成図、第2図
は、ホスト・コマンド・バッファ(HCB)・ブロック
の構成を示す図、第3図は、HCBブロックの連結構成
を示す図、第4図は、環境情報ブロック(E I B)
の構成例を示す図、第5図は、SrB、PIB、HCB
、EIBの管理体系を示す図、第6図は、ベーシック処
理アドレス・テーブルを示す図、第7図は、ホスト・コ
マンド別処理を示すフローチャート、第8図は、ベージ
/HCB/シートの獲得処理を示すフローチャート、第
9図は、HCB使用フラグの態様を示す図、第10図は
、ホスト・コンピュータからの入力から印字出力までの
処理手順を示すフローチャート、第11図は、片面印字
時におけるPIB、SIB、SSQの状態遷移を示す図
、第12図は、ジャム・リカバリの処理態様を示すフロ
ーチャート、第13図は、両面印字時におけるPIB、
SIB。 SSQの状態遷移を示す図、第14図は、SIB。 PIB、HCB、EIBの他の管理体系を示す図、第1
5図は、両面印字を行うプリンタ・エンジンの構成例を
示す図である。 図において、1は給紙トレイ、2は画像形成部、5は用
紙反転部、6は反転搬送路、8は用紙排出スタッカを示
す。 特許出願人 オリンパス光学工業株式会社第6図 対応文字コード処理アトレス 第8図 第14図 シート情報ブロック(SIB) 第15図 6反転M’fs ’IA
FIG. 1 is a block diagram showing the hardware configuration of an embodiment of a printer controller according to the present invention, FIG. 2 is a diagram showing the configuration of a host command buffer (HCB) block, and FIG. is a diagram showing the connected configuration of HCB blocks, and FIG. 4 is an environmental information block (E I B)
FIG. 5 is a diagram showing an example of the configuration of SrB, PIB, HCB.
, a diagram showing the EIB management system, FIG. 6 is a diagram showing the basic processing address table, FIG. 7 is a flowchart showing processing by host command, and FIG. 8 is a page/HCB/sheet acquisition process. FIG. 9 is a flowchart showing the HCB use flag mode, FIG. 10 is a flowchart showing the processing procedure from input from the host computer to printout, and FIG. 11 is the PIB when printing on one side. , SIB, and SSQ. FIG. 12 is a flowchart showing the jam recovery processing mode. FIG. 13 is a diagram showing the state transition of PIB during double-sided printing.
S.I.B. FIG. 14, a diagram showing the state transition of SSQ, is SIB. Diagram showing other management systems of PIB, HCB, EIB, Part 1
FIG. 5 is a diagram showing an example of the configuration of a printer engine that performs double-sided printing. In the figure, 1 is a paper feed tray, 2 is an image forming section, 5 is a paper reversing section, 6 is a reversing conveyance path, and 8 is a paper ejection stacker. Patent applicant: Olympus Optical Industry Co., Ltd. Figure 6 Corresponding character code processing Atres Figure 8 Figure 14 Sheet information block (SIB) Figure 15 6 Inversion M'fs 'IA

Claims (1)

【特許請求の範囲】 1、印字のための環境条件をホスト・コンピュータから
のホスト・コマンドにより変更するようにしたプリンタ
において、各ページの印字開始時の環境情報をページに
対応させて記憶する環境情報記憶手段を備え、前記環境
情報をページ単位で管理できるようにしたことを特徴と
するプリンタ・コントローラ。 2、前記環境情報は、ページ単位の印字情報からなるペ
ージ情報ブロックに従属して配置されていることを特徴
とする請求項1記載のプリンタ・コントローラ。 3、前記請求項1又は2において、印字した順にページ
情報の識別子を記憶する手段を備えていることを特徴と
するプリンタ・コントローラ。
[Scope of Claims] 1. In a printer in which environmental conditions for printing are changed by a host command from a host computer, an environment in which environmental information at the start of printing of each page is stored in correspondence with the page. A printer controller comprising an information storage means and capable of managing the environmental information on a page-by-page basis. 2. The printer controller according to claim 1, wherein the environment information is arranged subordinate to a page information block consisting of print information for each page. 3. The printer controller according to claim 1 or 2, further comprising means for storing identifiers of page information in the order of printing.
JP10725289A 1989-04-28 1989-04-28 Printer controller Pending JPH02286381A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10725289A JPH02286381A (en) 1989-04-28 1989-04-28 Printer controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10725289A JPH02286381A (en) 1989-04-28 1989-04-28 Printer controller

Publications (1)

Publication Number Publication Date
JPH02286381A true JPH02286381A (en) 1990-11-26

Family

ID=14454339

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10725289A Pending JPH02286381A (en) 1989-04-28 1989-04-28 Printer controller

Country Status (1)

Country Link
JP (1) JPH02286381A (en)

Similar Documents

Publication Publication Date Title
JPS6022234A (en) Form overlay type printer
US6317193B2 (en) Image forming apparatus
JPH11136459A (en) Image input/output device and method
JPH06106813A (en) Method and device for controlling printer
JPH02286381A (en) Printer controller
JPS6035687B2 (en) Print data control device
JP3116354B2 (en) Printer data management method
JPH02287611A (en) Printer controller
JPH02286380A (en) Printer controller
JPH02286384A (en) Printer controller
JP4280366B2 (en) Image control apparatus, image control method, and storage medium storing computer-readable program
JPH10309835A (en) Page printer
JP2739481B2 (en) Page printer
JP3195097B2 (en) Output control method and device
JP2908571B2 (en) Page printer
JP3867186B2 (en) Printing system
JPH0515551B2 (en)
JPH0532766B2 (en)
JPH04216983A (en) Printing device
JPS6349824A (en) Printer control system
JPH0948155A (en) Printer
JPH04336261A (en) Page printer
JP2001347707A (en) Imaging apparatus, method for controlling overrun error and medium recording program for controlling overrun error
JPH0361570A (en) Printer controller
JP2002358187A (en) Printing device and method for controlling the same device and storage medium