JPH01258968A - Printer control device - Google Patents

Printer control device

Info

Publication number
JPH01258968A
JPH01258968A JP63087569A JP8756988A JPH01258968A JP H01258968 A JPH01258968 A JP H01258968A JP 63087569 A JP63087569 A JP 63087569A JP 8756988 A JP8756988 A JP 8756988A JP H01258968 A JPH01258968 A JP H01258968A
Authority
JP
Japan
Prior art keywords
data
program
printing section
memory
printing
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
JP63087569A
Other languages
Japanese (ja)
Other versions
JP2687408B2 (en
Inventor
Ikunori Yamaguchi
山口 郁準
Yoshikazu Ikenoue
義和 池ノ上
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.)
Minolta Co Ltd
Original Assignee
Minolta 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=13918631&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH01258968(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Minolta Co Ltd filed Critical Minolta Co Ltd
Priority to JP63087569A priority Critical patent/JP2687408B2/en
Priority to US07/335,503 priority patent/US5036476A/en
Publication of JPH01258968A publication Critical patent/JPH01258968A/en
Application granted granted Critical
Publication of JP2687408B2 publication Critical patent/JP2687408B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

PURPOSE:To allow protocol on a printing side to be changed over using a signal from a data processor side and thereby improve operative efficiency by providing a starting means for starting any program stored in memory in response to a specified signal connected by a data processor. CONSTITUTION:Memories (ROM 305, RAM 307) which store a plurality of programs for controlling the operation of a printing section are provided. In addition, a timer 302 which is a program starting means is provided and in response to a specified signal connected by a data processor, it starts any program stored in the memories (ROM 305, RAM 307) and activates the printing section according to the program.

Description

【発明の詳細な説明】 〔産業上の利用分野] 本発明は汎用プリンタの制御装置に関するものである。[Detailed description of the invention] [Industrial application field] The present invention relates to a control device for a general-purpose printer.

〔従来技術] コンピュータシステムにおける出力装置たるプリンタと
、これを印写させるべきデータを送出するデータ処理装
置とは両者間で上記データ及び制御データの授受が行わ
れるが、そのためにはプリンタ、データ処理装置のプロ
トコルが同一である必要がある。特定のデータ処理装置
に対応して設計されるプリンタにおいてはデータ処理装
置のプロトコルと同一のプロトコル仕様を定めればよい
[Prior Art] The above data and control data are exchanged between a printer, which is an output device in a computer system, and a data processing device, which sends data to be printed. Device protocols must be the same. For a printer designed to correspond to a specific data processing device, it is sufficient to define the same protocol specifications as the protocol of the data processing device.

これに対しプロトコルが異なる複数種のデータ処理装置
に接続されて使用されるべき汎用プリンタにおいてはプ
リンタ固有のプロトコルの仕様としておく一方、これに
適合しないプロトコルのデータ処理装置との接続のため
にプロトコル変換装置を備えている。
On the other hand, for general-purpose printers that are to be used by being connected to multiple types of data processing devices with different protocols, a printer-specific protocol specification is required. Equipped with a conversion device.

プロトコル変換装置としては、データ処理装置から出力
される制御情報を、その要求する機能に相当するプリン
タ側の制御情報に変換するプロトコル変換プログラム(
エミュレーションソフトウェア)をプリンタ側の制御用
プロセッサで作動させ、データ処理装置から出力される
制御情報をプリンタのもつ制御情報に変換するものが一
般的であった。
The protocol conversion device uses a protocol conversion program (
Emulation software) was generally run on the printer's control processor to convert control information output from the data processing device into control information possessed by the printer.

この場合、プリンタ側では変換された制御情報から更に
プリンタの動作を制御する内部パラメータに解読変換す
るプロセスが行われる。
In this case, the printer side performs a process of decoding and converting the converted control information into internal parameters that further control the operation of the printer.

而して複数種のエミュレーションソフトウェアを備えた
ものにおいては、−旦いずれかのエミュレーションソフ
トウェアを起動すると、ハードウェアでこれをリセット
することによってのみ他のエミュレーションソフトウェ
アへの切換が可能な構成となっていた。
However, in devices equipped with multiple types of emulation software, once one of the emulation software is started, it is possible to switch to another emulation software only by resetting it in hardware. Ta.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

従って特定のデータ処理装置に接続した状態で継続的に
使用する場合には何らの不都合はないが、プリンタを異
プロトコル仕様の複数のデータ処理装置と接続し随時デ
ータ処理装置を切換えて使用する等の用途には適用でき
ないという不都合があった。
Therefore, there is no problem when using the printer continuously while connected to a specific data processing device, but if the printer is connected to multiple data processing devices with different protocol specifications and the data processing devices are switched at any time, etc. This method has the disadvantage that it cannot be applied to the following applications.

本発明は斯かる問題点を解決するためになされたもので
あり、データ処理装置側からの制御信号で実行すべきエ
ミュレーションソフトウェアの切換を可能とする構成と
して上述の用途に供し得るようにしたプリンタ制御装置
を提供することを目的とする。
The present invention has been made in order to solve such problems, and provides a printer that can be used for the above-mentioned purpose by having a configuration that allows switching of emulation software to be executed using a control signal from a data processing device. The purpose is to provide a control device.

〔問題点を解決するための手段〕[Means for solving problems]

本発明に係るプリンタ制御装置は、印写部と、これによ
って印写されるデータを与えるデータ処理装置との間に
介装され、印写部の動作の制御!「を司るプリンタ制御
装置において、前記印写部の動作を制御するためのプロ
グラム複数を格納するメモリと、前記データ処理装置か
ら与えられた所定信号に応答して、前記メモリに格納さ
れた任意のプログラムを起動するプログラム起動手段と
を具備することを特徴とする。
A printer control device according to the present invention is interposed between a printing section and a data processing device that provides data to be printed by the printing section, and controls the operation of the printing section. In the printer control device that controls the operation of the printer, there is provided a memory that stores a plurality of programs for controlling the operation of the printing section, and a memory that stores a plurality of programs for controlling the operation of the printing section, and an arbitrary program that is stored in the memory in response to a predetermined signal given from the data processing device. The present invention is characterized by comprising a program starting means for starting a program.

また印写部の動作制御用のプログラム、即ちエミュレー
ションソフトウェアはデータ処理装置、その他外部から
前記メモリに書込み得るようにすることを他の特徴とし
ている。
Another feature is that a program for controlling the operation of the printing section, that is, emulation software, can be written into the memory from a data processing device or other external device.

更に印写部に固有のプログラムと他のプログラムとを時
分割的に実行できるようにしていることを他の特徴とし
ている。
Another feature is that a program unique to the printing section and other programs can be executed in a time-sharing manner.

なおこのプリンタ制御装置は、印写部と一体的に組立て
られている構成、つまりプリンタ内蔵としていてもよく
、またプリンタとは別体としてもよい。
Note that this printer control device may be assembled integrally with the printing section, that is, built into the printer, or may be separate from the printer.

〔作用〕[Effect]

データ処理装置の所定信号を発すると前記メモリの任意
のプログラムが起動する。またエミュレーションソフト
ウェアは外部からこれを与えて前記メモリに書込ませる
ことができる。
When the data processing device issues a predetermined signal, an arbitrary program in the memory is activated. Also, the emulation software can be given from the outside and written into the memory.

更にデータ処理装置側からの信号により随時エミュレー
ションソフトウェアと印写部に固有のプログラムとを切
換えて実行し得る。
Furthermore, the emulation software and the program specific to the printing section can be switched and executed at any time based on a signal from the data processing device.

〔実施例〕〔Example〕

以下本発明をその実施例を示す図面に基づいて説明する
The present invention will be described below based on drawings showing embodiments thereof.

〔概略の構成〕[Outline structure]

まず、本発明に係るプリンタの概略構成について説明す
る。第1図は本発明のプリンタ10の構成を示すブロッ
ク図である。汎用のデータ処理装置1からのデータは、
データ処理装置1のスループットを改善するために、フ
ァイルバッファ2に格納された後、プリンタ10に出力
される。プリンタ10は、ビットマツプ方式のデータ処
理装置BMU 3、即ち本発明のプリンタ制御装置と、
電子写真プロセスレーザ等を備えるプリントエンジン4
と、外部給紙ユニット5、ソータ6等の付属装置よりな
る。
First, a schematic configuration of a printer according to the present invention will be explained. FIG. 1 is a block diagram showing the configuration of a printer 10 of the present invention. The data from the general-purpose data processing device 1 is
In order to improve the throughput of the data processing device 1, the data is stored in the file buffer 2 and then output to the printer 10. The printer 10 includes a bitmap type data processing device BMU 3, that is, a printer control device of the present invention;
Print engine 4 equipped with an electrophotographic process laser, etc.
and accessory devices such as an external paper feed unit 5 and a sorter 6.

第2図は、プリンタシステムの外観を示すものである。FIG. 2 shows the appearance of the printer system.

プリントエンジン4の筐体内には電子写真プロセス及び
BMU 3を内蔵しており、アクセサリとして外部給紙
ユニット5と、ソータ6が接続可能である。また、プリ
ントエンジン4には、システムの状態を示す表示部及び
簡単な操作を行なうためのキーが並べられた表示パネル
44が装着されている。
An electrophotographic process and a BMU 3 are built into the housing of the print engine 4, and an external paper feed unit 5 and a sorter 6 can be connected as accessories. Further, the print engine 4 is equipped with a display panel 44 on which a display section showing the status of the system and keys for performing simple operations are arranged.

第3図は、表示パネル44の詳細を示すものである。9
01〜903が入カキ−であり、910〜918が一表
示素子である。キー901は、プリント動作を一時中断
させるためのボーズキー、902はテストプリントを起
動するためのテストキーであり、テストキー902は9
03のシフトキーと同時に押すことによってプリントを
中断するキャンセルキーとなる。
FIG. 3 shows details of the display panel 44. 9
01 to 903 are input keys, and 910 to 918 are display elements. A key 901 is a Bose key for temporarily suspending the print operation, a test key 902 is a test key for starting a test print;
When pressed at the same time as the shift key 03, it becomes a cancel key that interrupts printing.

第4図は、プリンタ10の制御系の概略ブロック図であ
る。ビットマツプ方式データ処理装置3は、ビットマツ
プ用のメモリBM−RAM 32、このBM −RAM
32に描画を行なうビットマツプ書込部31 (第9図
参照)、フォント部33及びこれらの制御を行なうビッ
トマツプ制御部30よりなる。プリントエンジン4との
接続は、制御データ(枚数、アクセサリ−など)用のバ
スB3とイメージデータ用バスB4により行う。
FIG. 4 is a schematic block diagram of the control system of the printer 10. The bitmap type data processing device 3 includes a bitmap memory BM-RAM 32, and a bitmap memory BM-RAM 32.
32, a bitmap writing section 31 (see FIG. 9), a font section 33, and a bitmap control section 30 controlling these sections. Connection with the print engine 4 is made through a bus B3 for control data (number of sheets, accessories, etc.) and a bus B4 for image data.

プリントエンジン4は前述の印写部に相当し、3つのコ
ントローラを中心に構成される。まず、インターフェー
ス制御部(IFC)40はビットマツプ制御部30から
の制御データの処理及び表示パネル制御を行い、また内
部バスB5を通じてプリントエンジン4全体のタイミン
グの制御を行なう。
The print engine 4 corresponds to the above-mentioned printing section and is mainly composed of three controllers. First, the interface control section (IFC) 40 processes control data from the bitmap control section 30 and controls the display panel, and also controls the overall timing of the print engine 4 via the internal bus B5.

電子写真制御部41は、内部バスB5を通じてインター
フェース制御部40から送られるデータに応じて、電子
写真プロセス部45の制御を行なう。
The electrophotographic control section 41 controls the electrophotographic processing section 45 in accordance with data sent from the interface control section 40 via the internal bus B5.

プリントヘッド制御部42は、内部バスB4を通じてビ
ットマツプ書込部31から送られてくる情報に従って、
プリントヘッド部43の半導体レーザの発光及びポリゴ
ン・モータの回転を制御する。また、外部給紙ユニット
5及びソータ6も、内部バスB5を通じてインターフェ
ース制御部40から制御される。
The print head control unit 42 follows the information sent from the bitmap writing unit 31 via the internal bus B4.
It controls the light emission of the semiconductor laser of the print head section 43 and the rotation of the polygon motor. Further, the external paper feed unit 5 and the sorter 6 are also controlled by the interface control section 40 through the internal bus B5.

〔制御部の構成〕[Configuration of control unit]

第5図は本発明によるビットマツプ制御部30の構成を
示すものである。全体の構成としては、データ入出力用
のインターフェース(301,309,310゜311
)と、制御部の中心となるCPU 303とそのシステ
ムROM、 RAM(305,307) 、CPU 3
03に定期的に割り込みをかけるタイマー302、そし
てデータ蓄積用のバッファメモリ(304,306,3
08)から成る。
FIG. 5 shows the configuration of the bitmap control section 30 according to the present invention. The overall configuration consists of data input/output interfaces (301, 309, 310° 311
), the central CPU 303 of the control unit, its system ROM, RAM (305, 307), CPU 3
A timer 302 that periodically interrupts 03, and a buffer memory for data storage (304, 306, 3
08).

次に各部の動作を説明する。まずバスB2を通してデー
タ処理装置インターフェース301より取り込まれたデ
ータはR−バッファ304に蓄積される。
Next, the operation of each part will be explained. First, data fetched from the data processing device interface 301 through the bus B2 is stored in the R-buffer 304.

システムROM 305内には、第6図に示すようにホ
スト、つまりデータ処理装置から送られてきたデ−タの
仮編集を行ない、データをパケットとしてバケットバッ
フ1308に書き込むホストプロセス65と、パケット
を解析してビットマツプ書込部インターフェース310
よりビットマツプ書込部31へ、またはフォントインタ
ーフェース309を通じてフォント部へ、さらにプリン
トエンジンインターフェース311を通してインターフ
ェース制御部40ヘデータを送るパケットプロセス64
という独立したプログラムが格納されている。そして、
同じ(システムROM 305に書き込まれているスケ
ジューラ62がタイマー302からのタイマー割り込み
61によって各プロセスを状態に応じて切り替えている
As shown in FIG. 6, the system ROM 305 includes a host process 65 that temporarily edits data sent from the host, that is, a data processing device, and writes the data as a packet to the bucket buffer 1308; Analyze and bitmap writing interface 310
A packet process 64 sends data to the bitmap writing unit 31, or to the font unit through the font interface 309, and further to the interface control unit 40 through the print engine interface 311.
It contains an independent program. and,
The scheduler 62 written in the system ROM 305 switches each process according to the state using a timer interrupt 61 from the timer 302.

システムRAM 307内には第7図(a)に示すよう
なカレント・プロセス・ステータス(CPS)ブロック
という領域が蔦り、各プロセスの切り替え時にcpu3
03のレジスタ内容がCPS内に記憶されるので、各プ
ロセスは独立して動作を行うことができる。。
In the system RAM 307, there is an area called a current process status (CPS) block as shown in FIG. 7(a).
Since the register contents of 03 are stored in the CPS, each process can operate independently. .

CPSブロックはパケットプロセス64.ホストプロセ
ス65.ユーザプロセス66(後述)夫々のための退避
エリアと、これらプロセスに共用の退避エリアとがある
The CPS block is a packet process 64. Host process 65. There is a save area for each user process 66 (described later) and a save area shared by these processes.

また、システムROM 305にはプリンタ起動時のた
め初期化のスタートプロセス63が格納されており、ホ
ストプロセス65より直接スタートさせる。
Further, the system ROM 305 stores an initialization start process 63 for when the printer is started, and is started directly from the host process 65.

システムRAM 307のメモリ構成を第7図(b)図
に示す。システムRAM 307のダウンロードセグメ
ントには、ユーザプロセス66のための領域66′が設
けられている。データ処理装置インターフェース301
を通してデータ処理装置1から送られてくるか、または
フォントインターフェース309を通してフォントカー
トリッジから読込んだ別のプロセス(ユーザプロセス6
6)をシステムRAM 307のこの領域66′にロー
ドする。そうするとスケジューラ62によって他のプロ
セスと同様に時分割処理を行なうことができる。このユ
ーザプロセス66は、本プリンタ固有のプロトコル(ホ
ストプロトコル)と異なるプロトコルで送られてきたデ
ータをホストプロトコルに変換するプログラムである。
The memory configuration of the system RAM 307 is shown in FIG. 7(b). The download segment of system RAM 307 is provided with an area 66' for user process 66. Data processing device interface 301
from the data processing device 1 through the font interface 309 or read from the font cartridge through the font interface 309
6) into this area 66' of system RAM 307. Then, the scheduler 62 can perform time-sharing processing like other processes. This user process 66 is a program that converts data sent in a protocol different from the protocol unique to this printer (host protocol) into the host protocol.

この場合のデータの流れは第8図に示すように例えばデ
ータ処理装置1からインターフェース301を介してシ
ステムRA?I 307内のR−バッファ304に書込
み、このR−バッファ30゛4内に蓄積されている受信
データ (ホストプロトコル以外のプロトコルのデータ
)をユーザプロセス66で取り出し、ホストプロトコル
のデータに変換してシステムRA?1307内のOR−
バッファ306に蓄積する。データの仮編集を行なうホ
ストプロセス65は、ユーザプロセス66の起動時には
OR−バッファ306を取出してホストプロトコルのデ
ータとしてこれを取扱えばよ(、またユーザプロセスの
非起動時、つまりホストプロトコルのデータである場合
は単にR−バッファ304内のデータを取り出すだけで
よ(、他に変更の必要がない。
In this case, the data flow is as shown in FIG. 8, for example, from the data processing device 1 through the interface 301 to the system RA? The user process 66 extracts the received data (data of a protocol other than the host protocol) stored in the R-buffer 304 and converts it into data of the host protocol. System RA? OR- in 1307
Accumulate in buffer 306. The host process 65 that temporarily edits data can take out the OR-buffer 306 and treat it as host protocol data when the user process 66 is started (and when the user process is not started, that is, as host protocol data). In some cases, it is sufficient to simply retrieve the data in the R-buffer 304 (no other changes are necessary).

このユーザプロセス66は第7図(C)のようにこのプ
リンタ制御装置、つまりデータ処理装置3で対応し得る
プロトコル別に複数個システムROM 305内に保持
しておき、データ処理装置1から与えられるユーザプロ
セス指定コードによって指定のユーザプロセスをシステ
ムRAM 307内のダウンロード領域(ユーザプロセ
ス領域)66′にロードさせるようにしてもよい。
As shown in FIG. 7(C), the user processes 66 are stored in the system ROM 305 in a plurality of protocols for each protocol that can be supported by the printer control device, that is, the data processing device 3. A specified user process may be loaded into the download area (user process area) 66' in the system RAM 307 using a process specification code.

以上要約するとホストプロトコルはホストプロセス65
中に用意されており、このプロトコルで送信されてきた
データはシステムRAM 307のR−バッファ304
に蓄積し、これを仮編集してシステムl?AM307の
バケットバッファ308に書込むのである。
To summarize above, the host protocol is the host process 65
The data sent using this protocol is stored in the R-buffer 304 of the system RAM 307.
, and temporarily edit this to create a system. It writes to the bucket buffer 308 of the AM 307.

一方、ホストプロトコル以外のプロトコルで送られてき
たデータのホストプロトコルでのデータへの変換プログ
ラム、つまりユーザプロセス66(1種類でも複数でも
よい)はシステムRAM 307のダウンロード領域6
6′に書込まれるが、これはデータ処理装置1から与え
ることとしても、またフォントカートリッジ等外付はメ
モリから与えることとしてもよく、更にシステムRAM
 305に予め複数用意しておき、これを選択的に与え
るようにしてもよい。そしてこの場合は一旦R−バッフ
ァ304に書込まれたデータをこのユーザプロセス66
でホストプロトコルのデータに変換してUR−バッファ
306に格納した上で、パケットバッファ308に書込
むのである。第28図はデータ処理装置1側から本発明
のプリンタ制御装置へ送出するデータの1例を示す。
On the other hand, a program for converting data sent using a protocol other than the host protocol into data using the host protocol, that is, a user process 66 (one or more types may be used) is stored in the download area 6 of the system RAM 307.
6', but this can be given from the data processing device 1, or external devices such as font cartridges can be given from memory, and furthermore, it can be given from the system RAM.
A plurality of them may be prepared in advance at 305, and these may be given selectively. In this case, the data once written to the R-buffer 304 is transferred to the user process 66.
The data is converted into host protocol data and stored in the UR-buffer 306, and then written to the packet buffer 308. FIG. 28 shows an example of data sent from the data processing device 1 side to the printer control device of the present invention.

この例ではユーザプロセス「1」を指定するコード(例
えばESCESC[1)及びユーザプロセス「1」に適
合する形態のターゲットデータを送出し、次に上記ユー
ザプロセス「1」とは異なるユーザプロセス「2」を指
定するコード(例えばESCESCU2) 及びこのユ
ーザプロセス「2」に適合する形態のターゲットデータ
を送出し、次にホストプロセスを指定するコード(例え
ばESCESC00)及びこれに適合するデータ (ネ
イティブデータ)を送出する。
In this example, a code that specifies user process "1" (for example, ESCESC[1]) and target data in a format compatible with user process "1" are sent, and then user process "2", which is different from the user process "1", is sent. ” (for example, ESCESCU2) and target data in a format that matches this user process “2”, and then sends a code that specifies the host process (for example, ESCESC00) and data (native data) that matches this. Send.

これを受けたプリンタは各データを自動的に連続印写す
ることになる。
The printer that receives this automatically prints each data continuously.

また、プリンタ動作を制御する他のプロセスを変更する
必要がないので、ユーザプロセス66はデータの変換の
みを行なう簡単なものになり、開発も容易である。
Furthermore, since there is no need to change other processes that control printer operations, the user process 66 is simple and only performs data conversion, making development easy.

第9図は、ビットマツプ書込部31の詳細ブロック図を
示す。ビットマツプ書込部の機能は大別して、BM−R
AM 32への描画機能と、プリントの際にBM−RA
M 32のデータをプリントエンジン4へ出力する機能
とに分かれる。
FIG. 9 shows a detailed block diagram of the bitmap writing section 31. The functions of the bitmap writing section can be roughly divided into BM-R.
Drawing function to AM 32 and BM-RA when printing
It is divided into a function of outputting the data of M32 to the print engine 4.

8M−RAM 32への描画機能は、さらに2つに分け
られ、グラフィクイメージ書込部316により行われる
線1円の描画と、フォントイメージ書込部311により
行われるフォント描画とからなる。両書込部316,3
11 ともビットマツプ制御部インターフェース317
を通じてビットマツプ制御部30から送られてくる中間
コードで動作するロジック部であるが、グラフィクイメ
ージ書込部316のほとんどの処理は、中間コード内の
パラメータを解析して聞−RAM 32に描画するのに
対して、フォントイメージ書込部311のほとんどの処
理は、中間コード内のデータに従ってフォント部インタ
ーフェース314を通じてフォント部33から読み込ん
だフォントイメージをBM−RAM 32に描画する。
The drawing function to the 8M-RAM 32 is further divided into two parts: drawing of a line of one circle performed by the graphic image writing section 316 and font drawing performed by the font image writing section 311. Both writing sections 316,3
11 Tomo bitmap control unit interface 317
This is a logic section that operates on the intermediate code sent from the bitmap control section 30 through the graphics image writing section 316, but most of the processing in the graphic image writing section 316 involves analyzing the parameters in the intermediate code and drawing it in the RAM 32. On the other hand, most of the processing of the font image writing section 311 is to draw a font image read from the font section 33 through the font section interface 314 into the BM-RAM 32 according to data in the intermediate code.

一方、プリントの際のデータ出力の機能は、プリントヘ
ッド制御部インターフェース315により行われる。す
なわち、ビットマツプ制御部からインターフェース31
7を介して送られてくるプリント開始コードを受は取る
と、プリントエンジン4のプリントヘッド制御部42か
らバスB4を通じて送られてくる同期信号に従って、B
M−RAM 32のデータをプリントヘッド制御部に出
力する。
On the other hand, the function of outputting data during printing is performed by the print head control unit interface 315. That is, from the bitmap control section to the interface 31
Upon receiving the print start code sent via the bus B4, the print start code is sent via the bus B4 in accordance with the synchronization signal sent from the print head control unit 42 of the print engine 4 via the bus B4.
Data in M-RAM 32 is output to the print head controller.

次にイメージエリアの考え方について説明する。Next, we will explain the concept of image area.

第10図に例を示す。第10図において、全エリア(A
1)で示される部分が、ペーパのサイズに相当する。
An example is shown in FIG. In Figure 10, the entire area (A
The portion indicated by 1) corresponds to the size of the paper.

周縁のマージン・エリア(A2)は、実際にペーパにプ
リントを行なう際の余白部分であり、印字データの描画
が行われるのは、その内側のイメージ・エリア(A3)
の部分である。印字の開始は、イメージ・エリアの左上
から行われ、文字は印字方向AIOに従って順次印字さ
れる。途中、改行コードが入力された場合、改行方向A
llに、改行幅A12だけ次の印字位置が移動する。ま
た、復行コードが入力されると、イメージ・エリア左端
、復行位置A13に次の印字位置が移動する。なお、マ
ージン・エリアA2は、データ処理装置lからの指定に
よりページ単位に変更が可能である。
The margin area (A2) on the periphery is the blank space when actually printing on the paper, and the image area (A3) inside is where the print data is drawn.
This is the part. Printing starts from the upper left of the image area, and characters are printed sequentially according to the printing direction AIO. If a line feed code is entered on the way, line feed direction A
ll, the next printing position moves by the line feed width A12. Furthermore, when the return code is input, the next printing position moves to the return position A13 at the left end of the image area. Note that the margin area A2 can be changed on a page-by-page basis according to a designation from the data processing device 1.

次に、フローチャートを参照しながら本システムの動作
説明を行なう。本システムのプログラムは次の3つに分
かれている。
Next, the operation of this system will be explained with reference to a flowchart. The program of this system is divided into the following three parts.

ホストプロセス  受信バッファ内のデータを解析し、
描画部及びプリン トエンジン部を制御するた めのパケットデータを発生 する。
Host process parses the data in the receive buffer and
Generates packet data for controlling the drawing section and print engine section.

パケットプロセス ホストプロセスによって発生したパ
ケットデータによ り実際にBM −RAMの描画、 及びエンジンの制御を行な う。
Packet process Actual drawing of BM-RAM and engine control are performed using packet data generated by the host process.

ユーザプロセス  形態の異なるプロトコルの入力に対
して、ホストプロ セスが解析可能なプロトコ ルへ変換しホストプロセス に渡す、フォントカートリ ッジ、システムROM 305又 はデータ処理装置flからの ダウンロードによって供給 される。プロトコル変換が 必要なければ実行しない。
User Process The host process converts protocol inputs of different formats into parsable protocols and passes them to the host process, provided by downloading from a font cartridge, system ROM 305, or data processing device fl. Do not perform protocol conversion if it is not necessary.

これらのプロセスは独立したプログラムとなっ、ており
、優先順位のある時分割処理によって並行して動作して
いる。優先順位はパケットプロセス、ホストプロセス、
ユーザプロセスの順位である。
These processes are independent programs that run in parallel using time-sharing processing with priorities. The priority is packet process, host process,
This is the ranking of user processes.

この他にタイマー割り込みによりこれらのプロセスの管
理を行なうスケジューラ、スタート時に起動されるスタ
ートプロセスがある。
In addition, there is a scheduler that manages these processes using timer interrupts, and a start process that is activated at startup.

次に各プロセスについて説明する。Next, each process will be explained.

〔スタートプロセス〕[Start process]

第11図はスタートプロセスを示すフローチャートであ
る。このプロセスはスタート時に1回だけ起動される。
FIG. 11 is a flowchart showing the start process. This process is launched only once at startup.

まず電源が投入されると(ステップ#1)、内部の初期
化を行ない(ステップ#2)、R−バッファ、OR−バ
ッファ、バケットバッファ(FIFO)のクリアを行な
う (ステップ#3.#4゜#5)0次に、この後ホス
トプロセスを起動するため準備動作として、リクエスト
ベクタのホストプロセスを示すビットをセットしくステ
ップ#6)、カレントベクタの出力プロセスを示すビッ
トをセットしくステップ# 7 ) 、CRTPRSに
ユーザプロセスを示す番号を入れる(ステップ#8)。
First, when the power is turned on (step #1), internal initialization is performed (step #2), and the R-buffer, OR-buffer, and bucket buffer (FIFO) are cleared (steps #3 and #4). #5) 0 Next, as a preparation for starting the host process after this, set the bit indicating the host process in the request vector (Step #6), and set the bit indicating the output process in the current vector (Step #7). , a number indicating the user process is entered in CRTPRS (step #8).

リクエストベクタとは、タイマー割り込みによってスケ
ジューラが起動されたとき、実行が中断されたプロセス
がスケジューラに対して実行の放棄と他プロセスの起動
要求を伝達するためのものであり、各プロセスに対応す
るビットをセットまたはリセットするようになっている
。またカレントベクタは実行中のプロセスに対応するビ
ットをセットするようになっていて、スケジューラが起
動されたときは実行が中断されたプロセスのビットがセ
ットされている。さらに、CRTPRSはカレントベク
タの示すプロセスの番号が入っていて、プロセスの番号
は優先順位が高い程大きくなる。このリクエストベクタ
、カレントベクタ、CRTPRSを用いてスケジューラ
は次のプロセスの実行先を決定する(次の「スケジュー
ラ」の項で詳細を述べる)。
A request vector is used by a process whose execution has been interrupted to convey to the scheduler a request to abandon execution and start another process when the scheduler is started by a timer interrupt, and contains bits corresponding to each process. to set or reset. The current vector is configured to set a bit corresponding to the process being executed, and when the scheduler is started, the bit of the process whose execution has been interrupted is set. Furthermore, CRTPRS contains the number of the process indicated by the current vector, and the process number increases as the priority level increases. Using this request vector, current vector, and CRTPRS, the scheduler determines the execution destination of the next process (details will be described in the next "Scheduler" section).

この後に、CPSブロックの初期化を行なう (ステッ
プ#9)。具体的には、各CPSでCPUの実行アドレ
スポインタのデータを格納するエリアに、各プロセスプ
ログラムのスタートアドレス値を入れ、スタックポイン
タを格納するエリアに所定のアドレス値を入れる。また
必要に応じて他のポインタの初期値も入れる。
After this, the CPS block is initialized (step #9). Specifically, in each CPS, a start address value of each process program is placed in an area for storing CPU execution address pointer data, and a predetermined address value is placed in an area for storing a stack pointer. Initial values of other pointers are also entered as necessary.

これらの初期設定を終えると割り込みを許可しくステッ
プ#10) 、タイマー割り込み待ち(ステップ#11
)のループに入る。
After completing these initial settings, you can enable interrupts (step #10) and wait for timer interrupts (step #11).
) enters the loop.

〔スケジューラ〕[Scheduler]

第12図はタイマー割り込みによって起動されるスケジ
ューラを示すフローチャートである。まずタイマーによ
る割り込みが入ると(ステップ#30)、CPuの各レ
ジスタの値をCPSブロック内の退避エリアへ退避する
(ステップ#31)。次にリクエストベクタにセットさ
れているビットの内で、最優先のプロセス番号をREQ
PR5に入れる(ステップ#32)。ここでCRTPR
Sには割り込み処理を行なう直前のプロセス番号が入っ
ているので、これとREQPR5を比較することによっ
て、より優先順位の高いプロセスの起動リクエストがあ
るかどうかを判断する(ステップ#33) 、上位プロ
セスの起動リクエストがない(ステップ#33でNo)
場合、処理中であったプロセス(CRTPRSが示して
いる)がリクエストベクタのビットをリセットして先の
実行を放棄しているかどうかをチエツクしくステップ#
42)、放棄していない(ステップ#42でYES)場
合はCPSブロックの退避エリアの各レジスタのデータ
をCPUにセットして(ステップ#39)復帰する。こ
の場合タイマー割り込みによって中断したプロセスがそ
のまま実行される。もし放棄している(ステップ#42
でNO)場合はCRTPRSの示すプロセスよりも下位
であり、かつ最上位のプロセス番号をREQPR5に入
れて(ステップ#41) 、上位プロセスの起動要求が
あった(ステップ#33でYES)場合と同様の処理を
行なう。ここではCRTPRSの示す実行を中断するプ
ロセスのCPSに退避エリアの値を転送しくステップ#
35) 、RI!QPRSの示すプロセスのcps0値
を退避エリアに転送する(ステップ#36)。
FIG. 12 is a flowchart showing a scheduler activated by a timer interrupt. First, when an interrupt is generated by a timer (step #30), the values of each register of the CPU are saved to a save area in the CPS block (step #31). Next, REQ the highest priority process number among the bits set in the request vector.
into PR5 (step #32). Here CRTPR
S contains the process number immediately before interrupt handling, so by comparing this with REQPR5, it is determined whether there is a startup request for a process with a higher priority (step #33). There is no activation request (No in step #33)
Step #
42) If not abandoned (YES in step #42), set the data in each register in the save area of the CPS block to the CPU (step #39) and return. In this case, the process that was interrupted by the timer interrupt continues to run. If abandoned (step #42
If the process is lower than the process indicated by CRTPRS and the highest process number is entered in REQPR5 (step #41), it is the same as when there is a request to start a higher-level process (YES in step #33). Process. Here, step # transfers the value of the save area to the CPS of the process whose execution is interrupted as indicated by CRTPRS.
35) , RI! The cps0 value of the process indicated by QPRS is transferred to the save area (step #36).

さらに、CRTPRSにR1!QPRSの値を入れ(ス
テップ#37) 、REQPRSの示すプロセスのカレ
ントベクタのビットだけをセットし、他はリセットする
(ステップ#38)。これらの処理によって退避エリア
にはREQPRSの示すプロセスのレジスタの値が入っ
ているので、復帰先はREQPRSの示すプロセスとな
る。
Furthermore, R1 to CRTPRS! Input the value of QPRS (step #37), set only the bit of the current vector of the process indicated by REQPRS, and reset the others (step #38). As a result of these processes, the register value of the process indicated by REQPRS is stored in the save area, so that the process indicated by REQPRS becomes the return destination.

〔ホストプロセス〕[Host process]

第13図はホストプロセスの動きを示すフローチャート
である。ホストプロセスの最初の起動は、前述のように
スタートプロセスがリクエストベクタを用いてスケジュ
ーラにホストプロセスの起動を要求し、タイマー割り込
みによって起動されたスケジューラがホストプロセスに
切り替わることによって行われる。このとき、制御部の
CPU (303)のプログラムカウンタにホストプロ
セスの先頭アドレスが設定される。
FIG. 13 is a flowchart showing the operation of the host process. The initial activation of the host process is performed by the start process using a request vector to request the scheduler to start the host process, and the scheduler activated by a timer interrupt switching to the host process. At this time, the start address of the host process is set in the program counter of the CPU (303) of the control unit.

処理の流れを説明すると、まずホストプロセスに用いて
いるフラグの初期化を行なう (ステップ#51)。具
体的には、ユーザプロセスの実行の有無を示すtlsE
RFフラグを0にセットし、受信データ処理ルーチンで
仮イメージ編集中であることを示すLPWRITEを0
にセットする。
To explain the flow of processing, first, flags used in the host process are initialized (step #51). Specifically, tlsE indicates whether or not a user process is being executed.
Set the RF flag to 0 and set LPWRITE to 0, which indicates that the temporary image is being edited in the received data processing routine.
Set to .

さらにホストプロセスが実行処理不可能な状態であるこ
とを示すHOSTENDフラグをOにセットし、ユーザ
プロセスとの共通フラグでありユーザプロセスの切り替
え処理中であることを示すUSERWAITもOにセッ
トしておく。そして、中間コード作成の準備としてフォ
ント部33よりフォント属性を読み込む(ステップ#5
2)。このときフォントカートリッジ内にデイツプスイ
ッチ(DIPSW)によってあらかじめ指定されたユー
ザプロセスが有るかどうかをチエツクしくステップ#5
3. #54) 、有りの場合はシステムRAM 30
7の所定の領域に指定されたユーザプロセスをロードし
くステップ#55)、ロード終了(ステップ#56)を
待ってユーザプロセスの実行を示すUSERFフラグを
1にセットしくステップ#57) 、リクエストベクタ
のユーザプロセスのビットをセットする(ステップ#5
8)。
Furthermore, set the HOSTEND flag to O, which indicates that the host process is in a state where execution processing is not possible, and set the USERWAIT flag, which is a common flag with the user process and indicates that the user process is being switched, to O. . Then, in preparation for intermediate code creation, font attributes are read from the font section 33 (step #5
2). At this time, check whether there is a user process specified in advance by the dip switch (DIPSW) in the font cartridge.Step #5
3. #54), if available, system RAM 30
Load the user process specified in the predetermined area of 7 (Step #55), wait for the end of loading (Step #56), and set the USERF flag indicating execution of the user process to 1 (Step #57), and load the request vector. Set user process bits (step #5
8).

これは、最下位のプロセスは常にリクエストベクタのビ
ットをセットしておき、自分自身の実行を放棄すること
の無いようにするためである。その後、指定ユーザプロ
セスをエミュレーシッンベクタにセットする (ステッ
プ#59)。これらの初期化動作(ステップ#51〜ス
テップ#59)を行った後、主ループ(ステップ#60
〜ステップ#66)に入る。またデイツプスイッチDI
PSWでユーザプロセス指定のない(ステップ#53で
No)場合、ROM内にデイツプスイッチDIPS−で
指定されたユーザプロセスがない(ステップ#54でN
o)場合、ステップ#60に潜入する。
This is so that the lowest process always sets the request vector bit and does not abandon its own execution. Thereafter, the designated user process is set in the emulation vector (step #59). After performing these initialization operations (step #51 to step #59), the main loop (step #60
~ Step #66) is entered. Also, dip switch DI
If there is no user process specified by PSW (No in step #53), there is no user process specified by deep switch DIPS- in the ROM (N in step #54).
o) If so, go to step #60.

主ループではFIFOの空エリアがなくなるか、USE
RF = 1  (ステップ#61テYES)(7)と
きUR−バッファ、USERF =0 (ステップ#6
1でNo)のときは、R−バッファが空になる (ステ
ップ#63でNO)とき以外は受信データ処理(ステッ
プ#64)を行なう。
In the main loop, if there is no FIFO empty area or USE
RF = 1 (Step #61 YES) (7) When UR-Buffer, USERF = 0 (Step #6
1 (No), the received data processing (step #64) is performed except when the R-buffer becomes empty (step #63: NO).

また、データ処理を行わない(ステップ#60、ステッ
プ#62、ステップ#63でNO)ときはJOBOUT
処理1を実行する(ステップ#69)。ここで[IR−
バッファが空で(ステップ#62でNO)ユーザプロセ
スの切り替え処理中であれば(ステップ#67でYES
)プロセス切り替え処理が終わったことを示すHO3T
ENDフラグをセットしくステップ#68)その後JO
BOUT処理1を実行する。JOBOUT処理lの内容
は第14図に示すが、これはホストプロセスがスケジュ
ーラに対して上位プロセス(実施例ではパケットプロセ
ス)への切り替えを要求するために、リクエストベクタ
を更新する処理である。具体的には、リクエストベクタ
のパケットプロセスビットをセットしくステップ#72
) 、ユーザプロセスが起動されてイテ(ステップ#7
3テYES)HO3TfEND 、 USBRWAIT
フラグがセットされていない(ステップ#77でNO。
Also, if data processing is not performed (NO in step #60, step #62, step #63), JOBOUT
Process 1 is executed (step #69). Here [IR-
If the buffer is empty (NO in step #62) and user process switching is in progress (YES in step #67)
) HO3T indicating that the process switching process has finished
Set the END flag Step #68) Then JO
Execute BOUT processing 1. The contents of the JOBOUT process 1 are shown in FIG. 14, and this is a process in which the host process updates a request vector in order to request the scheduler to switch to a higher-level process (packet process in this embodiment). Specifically, set the packet process bit of the request vector in step #72.
), the user process is started (step #7)
3 YES) HO3TfEND, USBRWAIT
The flag is not set (NO in step #77).

ステップ#80でYES)ときにはリクエストベクタの
ホストプロセスのビットをリセットし自らの実行を放棄
する。またユーザプロセスが無い(ステップ#73でN
o)場合は、ホストプロセスが最下位プロセスとなるの
でリクエストベクタのホストプロセスのビットはセット
したままにしておく。
If YES in step #80), the host process bit of the request vector is reset and its own execution is abandoned. Also, there is no user process (N in step #73)
In case o), the host process becomes the lowest process, so the host process bit in the request vector is left set.

ユーザプロセスの切替えに伴う処理においてはホストプ
ロセスが引続き処理可能、つまりOR−バッファ306
にデータが残っている(ステップ#73でYES)場合
は受信データ処理を続行する。この時、FIFOに空き
がない場合(#60でNO) は、”JOBOUT処理
1”が実行されるが、ユーザプロセスの切換中である場
合(#80でNo)にはリクエストベクタのホストプロ
セスビットのセット処理を実行しないため、次にパケッ
トプロセスで″JOBOLIT処理2“が実行されてパ
ケットプロセスのビットがリセットされ(ステップ#2
31゜第21図)でも、リクエストベクタは、ホストプ
ロセスがセットされたままであるので、ホストプロセス
に復帰する。
The host process can continue processing when the user process is switched, that is, the OR-buffer 306
If data remains (YES in step #73), the received data processing continues. At this time, if there is no space in the FIFO (NO in #60), "JOBOUT processing 1" is executed, but if the user process is being switched (No in #80), the host process bit of the request vector Since the set processing is not executed, "JOBOLIT processing 2" is then executed in the packet process and the bit of the packet process is reset (step #2
31° FIG. 21), the request vector is still set by the host process, so it returns to the host process.

またOR−バッファ306のデータが空である場合はス
テップ#68でHO5TENDフラグが立っているので
ステップ#77でYESとなり、USERWAITフラ
グ及びHOSTENDフラグを0にセットする(ステッ
プ#78及び#79)。この処理によってステップ#8
0ではYESとなり、リクエストベクタのホストプロセ
スのビットがリセットされる (ステップ#74)。
If the data in the OR-buffer 306 is empty, the HO5TEND flag is set in step #68, so the answer is YES in step #77, and the USERWAIT flag and HOSTEND flag are set to 0 (steps #78 and #79). With this process, step #8
If it is 0, it becomes YES, and the host process bit of the request vector is reset (step #74).

このようにしてユーザプロセス切替え処理が完了し、次
のユーザプロセスへ移ることができる。なお、これらの
処理中はタイマー割り込みを禁止して(ステップ#71
. #75)誤動作を防ぐようにしている。
In this way, the user process switching process is completed, and it is possible to move on to the next user process. Note that timer interrupts are disabled during these processes (step #71).
.. #75) Try to prevent malfunctions.

これらの流れから明らかなように、ユーザプロセス切り
替え時でない(USERWAIT= 0 )場合特定の
条件(F4FOの空エリアがない、R−バッファ又はU
R−バッファが空き等の条件。他に受信データ処理のサ
ブルーチン(ステップ#64)でも設定している)によ
ってJOBOUT処理1が実行されリクエストフラグが
更新されるまでは、タイマー割り込みによってスケジュ
ーラが起動されても再びホストプロセスに戻ってくるの
で受信データ処理を繰り返して行なうことになる。
As is clear from these flows, when not switching user processes (USERWAIT=0), certain conditions (no empty area of F4FO, R-buffer or U
R-Condition such as buffer being empty. Until JOBOUT processing 1 is executed by the receive data processing subroutine (step #64) and the request flag is updated, even if the scheduler is started by a timer interrupt, it will return to the host process again. Therefore, the received data processing will be repeated.

またユーザプロセス切り替え時にはOR−バッファ30
6が空となりHOSTENDフラグがセットされるまで
リクエストベクタのホストプロセスのビットはリセット
されないのでホストプロセス65及びパケットプロセス
64だけが起動され、残りのデータを処理してしまうま
で待つようになっている。その後切り替え処理が終了す
ればリクエストベク゛りのホストプロセスビットをリセ
ットするので、−度パケットプロセス64に移った後何
もせず切り替えられたユーザプロセス66が起動される
ようになる。
Also, when switching user processes, the OR-buffer 30
Since the host process bit of the request vector is not reset until the host process 65 becomes empty and the HOSTEND flag is set, only the host process 65 and the packet process 64 are activated and wait until the remaining data is processed. Thereafter, when the switching process is completed, the host process bit of the request vector is reset, so that the user process 66 that was switched without doing anything after moving to the packet process 64 is activated.

これらの処理が終了すると、表示パネル44上のテスト
キー902が押されているかどうかをチエツクしくステ
ップ#65) 、押されているときはテストプリント処
理(ステップ#66)を行なう。押されていない場合は
、主ループのスタートに戻る(ステップ#60)。
When these processes are completed, a check is made to see if the test key 902 on the display panel 44 is pressed (step #65), and if it is, a test print process (step #66) is performed. If it has not been pressed, the process returns to the start of the main loop (step #60).

〔テストプリント〕[Test print]

テストプリントは使用中のフォント、プリントエンジン
4の画像状態のチエツクをする場合に用いる機能であり
表示パネル44上のテストキー902で起動される。表
示パネル44の制御はインターフェース制御部40によ
って行われており、ビットマツプ制御部30ヘテストプ
リント要求を発する。実際の起動はステップ#65にお
いて、この要求を検出することで行われる。
Test printing is a function used to check the font in use and the image status of the print engine 4, and is activated by the test key 902 on the display panel 44. The display panel 44 is controlled by the interface control section 40, which issues a test print request to the bitmap control section 30. Actual activation is performed by detecting this request in step #65.

第27図はテストプリント処理(第13図のステ・ツブ
#66)の内容を詳細に示すフローチャートであり、こ
のフローチャートに示すようにテストプリントが実行さ
れるのはBM−RAM32、パケットバッファ308に
描画、仮編集が行われていない(ステップ#81及び#
82においてYES)場合である。このような条件が成
立してテストプリントが可能である場合、まず実行中の
モードを退避する(ステップ#83) 。
FIG. 27 is a flowchart showing the details of the test print process (Step #66 in FIG. 13). As shown in this flowchart, the test print is executed in the BM-RAM 32 and the packet buffer 308. Drawing and temporary editing have not been performed (steps #81 and #
82). If such conditions are satisfied and test printing is possible, first the mode being executed is saved (step #83).

次にテストプリントのモードを設定する(ステップ#8
4)。この設定項目はコピー枚数、ソータ6の使用ビン
等である。
Next, set the test print mode (step #8
4). The setting items include the number of copies, the bin used by the sorter 6, etc.

次にテストパターン(使用可能なフォントパターン、そ
の時点での設定モードを含む)をパケットバッファ30
8に出力する(ステップ#85)。テストパターンには
ユーザプロセス用のメツセージ印字エリアが設けてあり
、ユーザプロセスが起動されているとき (ステップ#
86でUSIERF = 1 )は、予めデータ処理装
置1からプロトコルによって指定されたデータ及び印字
パターンを起動中のユーザプロセスのテストパターンユ
ーザプロセスワークエリアよりデータを書込む(ステッ
プ#87)。
Next, the test pattern (including available font patterns and current setting mode) is transferred to the packet buffer 30.
8 (step #85). The test pattern has a message printing area for the user process, and when the user process is activated (step #
(USIERF=1) in step #86) writes the data and print pattern specified in advance by the protocol from the data processing device 1 from the test pattern user process work area of the user process that is being activated (step #87).

次に通常のモードでページイジェクト(PAGEEJE
CT)ファンクションをバケットバッファ308に出力
しくステップ#88)元のモードに復帰させる(ステッ
プ#89)。
Next, eject the page (PAGEEJE) in normal mode.
CT) Output the function to the bucket buffer 308. Step #88) Return to the original mode (Step #89).

〔受信データ処理〕[Received data processing]

受信データの処理フローを第15図(a)、第15図(
b)に示す。
The processing flow of received data is shown in Fig. 15(a) and Fig. 15(
Shown in b).

まず、受信データの処理を行なうために受信バッファよ
りデータを取り出す必要がある。受信データは第18図
に示すようにデータの受信割り込みによってデータ処理
インターフェース301より取り込まれ、R−バッファ
304に蓄積される。
First, in order to process the received data, it is necessary to extract the data from the receive buffer. As shown in FIG. 18, the received data is fetched from the data processing interface 301 by a data reception interrupt and stored in the R-buffer 304.

ここでユーザプロセス66が有る場合はR−バッファ3
04のデータのプロトコル変換を行った後UR−バッフ
ァ306に蓄積するので、USHRFが1のとき(ステ
ップ#101でYES)はUR−バッフ y 306よ
り、0のとき(ステップ#101でNo)はR−バッフ
ァ304よりデータを取り込む(ステップ#102 、
ステップ# 107) 。
Here, if there is a user process 66, R-buffer 3
After performing protocol conversion on the data of 04, it is stored in the UR-buffer 306, so when USHRF is 1 (YES in step #101), it is stored in the UR-buffer 306, and when it is 0 (No in step #101), it is stored in the UR-buffer 306. Load data from the R-buffer 304 (step #102,
Step #107).

ここで受信データは次の5つに分類される。Here, the received data is classified into the following five types.

・IFC関連コード(プリント・エンジン関連コ−l:
)“(ステップ#103〜ステップ#105)・JOB
制御コード(JOBSTART、 PAGEEJECT
) (ステップ#108〜ステップ#112) ・書式制御コード(ステップ#113〜ステップ#11
4) ・印字データ (文字コード、グラフィックコード)(
ステップ#130.ステップ# 140)・ユーザプロ
セス制御コード 印字データの場合(ステップ#130でYES)は、L
PWRITEフラグを1として(ステップ#131)対
応するフォーマットの中間コードに変換してFIFOに
出力する。文字コードの場合は、フォント・イメージ書
込部311へのフォーマットと同じでフォント・パター
ンのアドレス (ステップ#135)、イメージ・エリ
ア上の印字位置に対応するBM −RAMへの書込みア
ドレス(ステップ#136)および書込みモード(ステ
ップ#137)よりなる。グラフィックコードの場合は
、グラフィックイメージ書込部316へのコマンドと同
一のフォーマットで出力される(ステップ#141)、
このとき、文字コードの場合は、次の文字印字位置を更
新してお((ステップ#128)。
・IFC related codes (print engine related codes:
) “(Step #103 to Step #105)・JOB
Control code (JOBSTART, PAGEEJECT
) (Step #108 to Step #112) - Format control code (Step #113 to Step #11
4) ・Print data (character code, graphic code) (
Step #130. Step #140) - In the case of user process control code print data (YES in step #130), L
The PWRITE flag is set to 1 (step #131), and the intermediate code is converted into a corresponding format and output to the FIFO. In the case of a character code, the format is the same as the format to the font/image writing section 311, and the address of the font pattern (step #135) and the write address to the BM-RAM corresponding to the print position on the image area (step #135) are written. 136) and write mode (step #137). In the case of a graphic code, it is output in the same format as the command to the graphic image writing unit 316 (step #141);
At this time, in the case of a character code, the next character printing position is updated ((Step #128).

IFC関連コード(ステップ#103)は、インターフ
ェース制御部40に出力するものであるが、印字データ
との同期をとるため、印字データとは形式の異なるファ
ンクションタイプの中間コードとしてFIFOへ出力し
ておく (ステップ# 104)。そして“JOBOU
T処理1パを実行する(ステップ# 105)。
The IFC-related code (step #103) is output to the interface control unit 40, but in order to synchronize with the print data, it is output to the FIFO as an intermediate code of a function type different from the print data. (Step #104). And “JOBOU
T process 1 is executed (step #105).

JOB制御コードには、ページの区切りに用いるPAG
E EJECTコード(ステップ#110)と、ページ
群の区切りに用いるJOBSTART (ステップ#1
08でYES)の2つがある。どちらもIFC関連コー
ドと同様に、FIFOに出力する(ステップ#109.
ステップ;# 152)。
The JOB control code includes the PAG used to separate pages.
E EJECT code (step #110) and JOBSTART (step #1) used to separate page groups.
There are two options: 08 (YES). Both are output to FIFO in the same way as the IFC related code (step #109.
step; #152).

PAGE EJECTコードの場合PAGE EJEC
T処理(ステップ#111)の後、“JOBOUT処理
1”を実行しくステップ#112)、復帰する。書式制
御コード(ステップ#113 、ステップ#114)は
、印字の書式を制御する。同一イメージのコピー枚数を
指定するコードであれば(ステップ#115でYES)
、印字データとの同期をとるためFIFOに対応するフ
ァンクションを出力する(ステップ# 116)。
For PAGE EJECT code PAGE EJEC
After the T process (step #111), "JOBOUT process 1" is executed (step #112), and the process returns. The format control code (step #113, step #114) controls the printing format. If the code specifies the number of copies of the same image (YES in step #115)
, outputs a function corresponding to the FIFO in order to synchronize with the print data (step #116).

〔書式制御とPAGE EJECT処理〕第17図は書
式制御コードの処理シーケンスを示したものである。復
行コードの場合(ステップ#161でYES)は次の印
字位置を左端へ移動しくステップ#162)、改行コー
ドの場合は次の印字位置を一行下へ移動する(ステップ
# 165)。またランダム指定のとき (ステップ#
166でYES)はオフセット値を加算した後、次の印
字位置を更新する(ステップ#167)。
[Format Control and PAGE EJECT Processing] FIG. 17 shows the processing sequence of format control codes. If it is a return code (YES in step #161), the next print position is moved to the left end (step #162), and if it is a line feed code, the next print position is moved down one line (step #165). Also, when specifying random (step #
If YES at 166), the next printing position is updated after adding the offset value (step #167).

第16図はPAGE! EJECT処理のフローを示し
たものである。このPAGE EJECT処理は、FI
FO上へ中間コードとして仮編集するときの仮想的な処
理であり、中間データ処理(第22図(b))で実際に
ペーパの排出を行なうものとは異なる。PAGEEJE
CT処理はまずバケットバッファ308へPAGE E
JECTを示す中間コードを出力する (ステップ#1
52)。ここで、実際の排紙動作はパケットプロセスが
この中間コードを受は取った時に行われる。その後、次
のページの編集に備えて次の印字位置を先頭に戻す(ス
テップ#153)。これらの一連の動作は仮イメージ編
集を示すLPWRITEフラグによって判別され(ステ
ップ#151 、ステップ# 154)、空ページ出力
を防ぐ。
Figure 16 is PAGE! It shows the flow of EJECT processing. This PAGE EJECT process is
This is a virtual process when temporary editing is performed as an intermediate code on the FO, and it is different from the process in which paper is actually ejected in intermediate data processing (FIG. 22(b)). PAGEEJE
CT processing first goes to the bucket buffer 308.
Output an intermediate code indicating JECT (Step #1
52). Here, the actual paper ejection operation is performed when the packet process receives this intermediate code. Thereafter, the next printing position is returned to the beginning in preparation for editing the next page (step #153). These series of operations are determined by the LPWRITE flag indicating temporary image editing (step #151, step #154), and the output of empty pages is prevented.

ユーザプロセスの切り替えはユーザプロセス指定コード
によって行なう。このコードは透過性を有するコード、
つまりどのようなプロトコル体系のコードとも区別でき
るようなコード(例えばESCAPE C0DE =2
7を2回連続するようなもの)である必要がある。また
このコードのパラメータによってホストプロセス及び複
数のユーザプロセスを切り替え、その値はEM[lN0
Wにセットされる(ステップ#1I8)。またその時起
動されているユーザプロセスはエミュレーションベクタ
に割り当てられた値としてセットされている。
Switching of user processes is performed using a user process specification code. This code is a transparent code,
In other words, codes that can be distinguished from codes of any protocol system (for example, ESCAPE C0DE = 2
(something like 7 twice in a row). Also, the parameter of this code switches between the host process and multiple user processes, and its value is EM[lN0
It is set to W (step #1I8). Furthermore, the user process being activated at that time is set as a value assigned to the emulation vector.

ユーザプロセス指定コードの場合は(ステップ#117
でYES)、パラメータの指定ユーザプロセス番号をシ
ステムRAM 307上のEMUNO−にセットした後
(ステップ#118)ユーザプロセスが起動されている
か否かをチエツクしくステップ#119)、USERF
フラグがOのとき(ステップ#119でYES)、また
はUSERFが1のときでEMUNO−とエミュレーシ
ョンベクタとが違う (ステップ#120でYES)場
合には、EMtlNOWで示されるユーザプロセスをロ
ードしくステップ#121)、ロード終了を待った後(
ステップ# 122)、USERFを1にセットする(
ステップ#123)。
In the case of user process specification code (step #117
After setting the parameter specified user process number to EMUNO- on the system RAM 307 (step #118), check whether the user process is activated or not (step #119), USERF
When the flag is O (YES at step #119) or when USERF is 1 and EMUNO- and the emulation vector are different (YES at step #120), load the user process indicated by EMtlNOW. 121), after waiting for the loading to finish (
Step #122), set USERF to 1 (
Step #123).

これらの処理が終了した後またはステップ#119゜#
120でNoの場合は、ユーザプロセスの初期化を行な
うが、具体的には第7図(a)に示すカレントプロセス
ステータスブロックのユーザプロセス用退避エリアを初
期化しくステップ#124)、最後にリクエストベクタ
のユーザプロセスのビットをセットする(ステップ#1
26)。ユーザプロセス解除コードの場合は、USER
Fフラグを0として(ステップ#12B)、この後、リ
クエストベクタのユーザプロセスのビットをリセットす
る (ステップ# 129)。
After these processes are completed or step #119゜#
If No in step 120, the user process is initialized, specifically, the user process save area of the current process status block shown in FIG. 7(a) is initialized (step #124), and finally the request is Set the user process bit in the vector (step #1
26). USER for user process release code
The F flag is set to 0 (step #12B), and then the user process bit of the request vector is reset (step #129).

テストプリントのユーザプロセス印字エリアに書き込む
情報の指定はユーザプロセステストプリントデータ指定
コマンドで行なう。このコマンドでパラメータの値によ
って印字する情報を設定できるようになっている。この
コマンドが受は付けられたとき(ステップ#139でY
ES)は、そのパラメータを解析しくステップ# 14
0)、パラメータで指定されたエンジンステータスデー
タを入力(ステップ#141)した後、テストプリント
のユーザプロセス印字エリアに書き込む情報の仮編集を
行ったデータをシステムRAM 307上のEMUNO
Wの示すユーザプロセスのテストパターンユーザプロセ
スエリア(第29図参照)に書き込む(ステップ#14
2)。
Information to be written in the user process print area of the test print is specified using a user process test print data specification command. This command allows you to set the information to be printed based on parameter values. When this command is accepted (Y in step #139)
ES) to analyze its parameters in step #14
0), after inputting the engine status data specified by the parameters (step #141), the temporarily edited data to be written in the user process print area of the test print is stored in the EMUNO on the system RAM 307.
Write the test pattern of the user process indicated by W in the user process area (see Figure 29) (Step #14
2).

〔パケットプロセス〕[Packet process]

第19図はパケットプロセスの処理を示すフローチャー
トである。
FIG. 19 is a flowchart showing the processing of the packet process.

まず電源が投入されると(ステップ#200)、BM−
RAMのイメージエリアをクリアしくステップ#202
)、制御フラグを初期化する(ステップ#203)。
First, when the power is turned on (step #200), the BM-
Clear the RAM image area Step #202
), the control flag is initialized (step #203).

具体的には、プリント状態を示すJOBACTをクリア
し、BM −RAMへの描画状態を示すBMWRITE
をクリアし、同一枚数のコピー枚数を示すC0PYを1
にセットし、同一枚数のコピー枚数を計算するCC0U
NTを1にセットする。
Specifically, clear JOBACT, which indicates the print status, and BMWRITE, which indicates the drawing status to BM-RAM.
Clear and set C0PY, which indicates the number of copies of the same number, to 1.
CC0U to calculate the number of copies of the same number of sheets.
Set NT to 1.

この後、主ループに入るが、主ループの行なう処理は、 ・中間コードの解析とBM −RAMへの描画(ステッ
プ#212〜ステップ#215)と、・プリント・シー
ケンス制御(ステップ#205〜ステップ#211)と
がある。データの流れは次のようになる。まず、排紙条
件フラグであるJOBACTが1のときは、プリント・
シーケンス(ステップ#208 、ステップ#211)
に入る。
After this, the main loop enters, and the processes performed by the main loop are: - Intermediate code analysis and drawing to BM-RAM (step #212 to step #215), - Print sequence control (step #205 to step #211). The data flow is as follows. First, when the paper discharge condition flag JOBACT is 1, the print
Sequence (step #208, step #211)
to go into.

また、JOBACTが1でないときはprpoから中間
コードが有ることをチエツクして(ステップ#213)
中間コード処理が行われる。
Also, if JOBACT is not 1, check whether there is an intermediate code from prpo (step #213).
Intermediate code processing is performed.

ここでプリントシーケンスに入るとき (ステップ# 
205)とFIFO内のパケットデータが無くなったと
き(ステップ#215)は、下位のプロセスに実行を移
すために第21図のJOBOUT処理2を実行する(ス
テップ#230)。処理内容パケットプロセスのビット
をリセット (ステップ#231)することである。こ
のとき最下位のプロセスにリクエストフラグが立ってい
るので、最上位であるパケットプロセスがリクエストフ
ラグを落とすことによりスケジューラは最下位プロセス
に実行を移す。このようにパケットプロセスは優先順位
が最上位となるのでプログラムが待ちの状態となるが(
ステップ#205の場合)、実行不能になる(ステップ
#215の場合)ときのみ下位プロセスへ処理を移す。
When entering the print sequence here (step #
205) and when there is no more packet data in the FIFO (step #215), JOBOUT processing 2 in FIG. 21 is executed to transfer execution to a lower process (step #230). The processing content is to reset the packet process bit (step #231). At this time, since the request flag is set in the lowest-level process, the packet process, which is the highest-level, drops the request flag, and the scheduler shifts execution to the lowest-level process. In this way, the packet process has the highest priority, so the program is in a waiting state (
In the case of step #205), the process is transferred to the lower process only when it becomes unexecutable (in the case of step #215).

〔中間コード処理とプリント・シーケンス制御3次に、
FIFOに蓄えられた中間コードの処理フローを、第2
2図(a)、 (b)に示す。
[Intermediate code processing and print sequence control tertiary,
The processing flow of the intermediate code stored in the FIFO is
Shown in Figure 2 (a) and (b).

ここでは、主に中間コードに応じたBM −RAMへの
描画と、プリント・エンジン部へのコマンド出力などの
シーケンス制御を行なう。
Here, sequence control is mainly performed such as drawing to the BM-RAM according to the intermediate code and outputting commands to the print engine section.

まず、印字データの場合(ステップ#303でYES:
は、中間コードをフォント・イメージ書込部へ(ステッ
プ#304)、グラフィックの場合(ステップ#310
でN)はグラフィック・イメージ書込部へ出力(ステッ
プ#311)する。
First, in the case of print data (YES in step #303:
In the case of graphics, the intermediate code is sent to the font/image writing unit (step #304), and in the case of graphics (step #310)
(N) is output to the graphic image writing section (step #311).

もし初めてのデータを書込む場合(BM−WRITEフ
ラグ=0)(ステップ#305でYES)、BM−畦I
TEフラグを1としくステップ#306)、プリントエ
ンジン4に対して給紙等の準備を先行させるためのペー
パの先出しコマンドPFCMDをインターフェース制御
部40に出力する (ステップ4308)。これにより
ビットマツプ方式データ処理装置3のプリント準備が終
了すれば、感光体へのレーザ露光が直ちに可能となり、
給紙時間に相当してスループットが向上する。
If writing data for the first time (BM-WRITE flag = 0) (YES in step #305), BM-Round I
The TE flag is set to 1 (step #306), and a paper advance command PFCMD is output to the interface control unit 40 to cause the print engine 4 to prepare for paper feeding in advance (step 4308). As a result, once the bitmap data processing device 3 completes the print preparation, the photoreceptor can be exposed to laser light immediately.
Throughput is improved corresponding to paper feeding time.

IFC関連コードや及びJOBSTARTコードは、I
FCへ出力される(ステップ#312〜ステップ#31
3)。
IFC related codes and JOBSTART codes are
Output to FC (step #312 to step #31
3).

コピー枚数設定の場合(ステップ#319)は、コピー
枚数copy更新する (ステップ#320)。FIF
O305からビットマツプ書込部31への出力は、中間
コードデータがある限り順次行われるが、PAGE E
JECTコードを検出すると(ステップ#315でYE
S)、1ペ一ジ分の信号変換が終了したのでプリント動
作に入る。まず、コピー枚数copyをカウントするた
めのCC0UNTフラグに設定されているコピー枚数を
セットし、プリント起動処理に入る(ステップ#317
) (第23図)。プリント起動処理では、プリント処
理に入ったことを示すJOBACTフラグをセットしく
ステップ#401)プリントヘッド制御部インターフェ
ースをプリント可能状態にしくステップ#402)、イ
ンターフェース制御部40にプリントコマンドPRNC
MDを出力する (ステップ# 403)。
If the number of copies is set (step #319), the number of copies is updated (step #320). FIF
The output from O305 to the bitmap writing unit 31 is performed sequentially as long as there is intermediate code data, but PAGE E
When the JECT code is detected (YE in step #315)
S) Since signal conversion for one page has been completed, printing operation begins. First, the number of copies set in the CC0UNT flag for counting the number of copies copy is set, and the print startup process begins (step #317
) (Figure 23). In the print startup process, the JOBACT flag indicating that print processing has started is set.Step #401) The print head control unit interface is set to a printable state.Step #402) The print command PRNC is sent to the interface control unit 40.
Output the MD (step #403).

これにより、プリントヘッド制御部インターフェース3
15では、プリントヘッド制御部42の制御回路から送
られてくるパルスに同期してBM −RAMのデータを
バスB4を通じて出力する。
As a result, the print head control unit interface 3
At step 15, data in the BM-RAM is outputted via the bus B4 in synchronization with pulses sent from the control circuit of the print head control section 42.

プリントが終了すると、まだJOBACTフラグがセッ
トされているため第19図のステップ#204からステ
ップ#205へ進み、ステップ#206でインターフェ
ース制御部40からの露光終了コマンドEXPENDの
割り込み待ちとなる。EXPEND受信の割り込み処理
は第24図に示すように、EPENDフラグをセットし
リクエストベクタのパケットプロセスのビットをリセッ
トする。EXPENDを検出するとEPENDフラグが
1となりループを抜けて同一イメージのコピー制御を行
なう(ステップ#208〜ステップ#211)。
When printing is completed, since the JOBACT flag is still set, the process proceeds from step #204 to step #205 in FIG. 19, and in step #206, an interruption of the exposure end command EXPEND from the interface control unit 40 is awaited. As shown in FIG. 24, the EXPEND reception interrupt processing sets the EPEND flag and resets the packet process bit of the request vector. When EXPEND is detected, the EPEND flag becomes 1, the loop is exited, and copy control of the same image is performed (steps #208 to #211).

まず、コピー枚数カウンタCC0UNTを減算しくステ
ップ620B)、所定枚数のコピーが終了したがチエツ
クする(ステップ# 209)。終了の場合はプリント
起動処理に入る (第20図)。ここでは、次のイメー
ジの描画のためBM −RAMをクリアし、ステップ#
241 、プリント状態解除のためJOBACTフラグ
をリセットしくステップ#242)、BM −RAMへ
の描画状態を示すBMWRITt’のクリアを行なう 
(ステップ# 243)。コピー未終了の場合は再び、
同一イメージでプリントを開始する (ステップ#21
1)。
First, the copy number counter CC0UNT is decremented (step 620B), and a check is made to see if a predetermined number of copies have been completed (step #209). If the process is finished, the print start process begins (Fig. 20). Here, BM-RAM is cleared for drawing the next image, and step #
241, reset the JOBACT flag to cancel the printing state (step #242), and clear BMWRITt' indicating the drawing state to BM-RAM.
(Step #243). If copying is not completed, try again.
Start printing with the same image (Step #21
1).

〔ユーザプロセス〕[User process]

第25図はユーザプロセスの処理例を示すものである。 FIG. 25 shows a processing example of a user process.

ユーザプロセス自体は対応するプロトコルによっていく
つかのプログラムが存在するが、基本的な形態はこのよ
うになっている。特に、(ステップ#501〜#503
. #507. #510)のステップは各ユーザプロ
セスで共通化しておかないと他プロセスとの対応が取れ
なくなる。
The user process itself has several programs depending on the corresponding protocols, but the basic form is as follows. In particular, (steps #501 to #503
.. #507. Unless step #510) is shared by each user process, it will not be possible to correspond with other processes.

まず、R−バッファにデータが有ることをチエツクしく
ステップ#501)、その後にOR−バッファの空きを
チエツクする (ステップ# 502)。OR−バッフ
ァの空きがないときは(ステップ#502でNO)、ホ
ストプロセスの起動要求をリクエストベクタによって行
ない(ステップ#510)、UR−バッファに空きを作
るようにする。
First, it is checked whether there is data in the R-buffer (step #501), and then whether there is free space in the OR-buffer is checked (step #502). If there is no space in the OR-buffer (NO in step #502), a host process startup request is made using the request vector (step #510) to create space in the UR-buffer.

口R−バッファの空きがあるときは(ステップ#502
でYES)、R−バッファよりデータを取り込み(ステ
ップ#503)、プロトコル変換処理(ステップ#50
4〜#506. #508. #509)を行なう。
口R-When there is free space in the buffer (step #502
YES), import data from the R-buffer (step #503), and perform protocol conversion processing (step #50).
4~#506. #508. #509).

ユーザプロセス指定コードの場合(ステップ#511で
YES)は、描画中のデータがある場合排紙させるため
にページイジェクトコードを送り (ステップ#512
)、ユーザプロセス指定コードをそのままUR−バッフ
ァ306へ送る(ステップ#513)。この後、上位プ
ロセスのリクエストベクタのビットをセットしくステッ
プ#513)、エミュレーションベクタをユーザプロセ
ス指定コードのパラメータで指定されたプロセスの値に
セットする(ステップ#515)、さらに前のユーザプ
ロセスの残りデータを処理するためにUSERWAIT
をセットする(ステップ#516)。そしてスケジュー
ラの割り込み待ちとなる (ステップ#517)。
If it is a user process specification code (YES in step #511), send a page eject code to eject the paper if there is data being drawn (step #512).
), the user process designation code is sent as is to the UR-buffer 306 (step #513). After this, the request vector bit of the upper process is set (step #513), the emulation vector is set to the value of the process specified by the parameter of the user process specification code (step #515), and the remaining bits of the previous user process are set. USERWAIT to process data
is set (step #516). Then, it waits for an interrupt from the scheduler (step #517).

USERWA ITはホストプロセス61と共通フラグ
となっていてこのフラグがセットされるとホストプロセ
ス65がOR−バッファ306内のデータを処理してし
まうまで指定のユーザプロセスが実行されず誤動作を防
ぐ。
USERWA IT is a common flag with the host process 61, and when this flag is set, the designated user process will not be executed until the host process 65 processes the data in the OR-buffer 306 to prevent malfunction.

これらのプロセスの切り替えタイミングの例を示したの
が第26図である。このように、定期的なタイマー割り
込みによってスケジューラが起動されるが、プロセスが
切り替わるのは各プロセスの実行放棄条件が満たされた
ときである。
FIG. 26 shows an example of switching timing of these processes. In this way, the scheduler is activated by periodic timer interrupts, but the process is switched when the execution abandonment condition for each process is satisfied.

〔効果〕〔effect〕

以上の如き本発明装置による場合は印写部固有のプロト
コルと一致するプロトコルでデータ送受を行なうデータ
処理装置との間でのみならず、異プロトコルのデータ処
理装置との間でもデータ送受が可能であることは勿論、
ハードウェア操作を行なうことなくデータ処理装置側か
らの信号でプリンタ側のプロトコルを切換えることがで
き、従って操作性が向上することは勿論、多数の異プロ
トコルのデータ処理装置で1台のプリンタを共用するこ
とが可能となる。
In the case of the device of the present invention as described above, data can be sent and received not only with a data processing device that sends and receives data using a protocol that matches the protocol unique to the printing unit, but also with a data processing device that uses a different protocol. Of course, there are
The protocol on the printer side can be switched using signals from the data processing device side without any hardware operations, which not only improves operability but also allows multiple data processing devices with different protocols to share one printer. It becomes possible to do so.

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

第1図は本発明のプリンタの構成図、第2図はプリンタ
の外観を示す斜視図、第3図は表示パネルの詳細を示す
正面図、第4図はプリンタの制御回路要部のブロック図
、第5図は本発明のビットマツプ制御部の構成を示すブ
ロック図、第6図は本発明装置のソフトウェアの構成を
示す概念図、第7図はシステムRAMの構成を示す概念
図、第8図は受信データの流れを示すブロック図、第9
図はビットマツプ書込部の詳細ブロック図、第10図は
イメージエリアの説明図、第11図はスタートプロセス
を示すフローチャート、第12図はタイマー割り込みに
よって起動されるスケジューラを示すフローチャート、
第13図はホストプロセスの動きを示すフローチャート
、第14図はJOBOUT処理lの内容を示すフローチ
ャート、第15図は受信データの処理手順を示すフロー
チャート、第16図はPAGEEJECT装置の手順を
示すフローチャート、第17図は書式制御コードの処理
手順を示すフローチャート、第18図は受信データの割
り込み処理を示すフローチャート、第19図はパケット
プロセスの処理を示すフローチャート、第20図はプリ
ント起動処理を示すフローチャート、第21図はJOB
OUT処理2を示すフローチャート、第22図は中間コ
ード処理を示すフローチャート、第23図はプリント起
動処理を示すフローチャート、第24図はEXPEND
受信割り込受信環を示すフローチャート、第25図はユ
ーザプロセスを示すフローチャート、第26図はプロセ
スの切り替えタイミングの例を示すタイムチャート、第
27図はテストプリントの処理手順を示すフローチャー
ト、第28図はデータ処理装置からの送信データの1例
を示すフォーマット図である。 61・・・タイマー割り込み 62・・・スケジューラ
63・・・スタートプロセス 64・・・パケットプロ
セス65・・・ホストプロセス 66・・・ユーザプロ
セス特 許 出願人 ミノルタカメラ株式会社代理人 
弁理士 河  野  登  夫第  1  図 藁2図 第  3  図 筈  4  図 簗6図 (a) (b) 第  7  図 第10図 亘  11  図 第  14  ノ 第16図 #160 第  17  図 第20図   第21図 第22図 (b) #400                  #42
0第  23  図 第 27 図 第 28 ESCESCUI ESCESCUO 図
Fig. 1 is a configuration diagram of the printer of the present invention, Fig. 2 is a perspective view showing the external appearance of the printer, Fig. 3 is a front view showing details of the display panel, and Fig. 4 is a block diagram of the main parts of the control circuit of the printer. , FIG. 5 is a block diagram showing the configuration of the bitmap control section of the present invention, FIG. 6 is a conceptual diagram showing the software configuration of the device of the present invention, FIG. 7 is a conceptual diagram showing the configuration of the system RAM, and FIG. 8 is a conceptual diagram showing the configuration of the system RAM. is a block diagram showing the flow of received data, No. 9
10 is a detailed block diagram of the bitmap writing unit, FIG. 10 is an explanatory diagram of the image area, FIG. 11 is a flowchart showing the start process, and FIG. 12 is a flowchart showing a scheduler activated by a timer interrupt.
FIG. 13 is a flowchart showing the operation of the host process, FIG. 14 is a flowchart showing the contents of JOBOUT processing l, FIG. 15 is a flowchart showing the processing procedure of received data, and FIG. 16 is a flowchart showing the procedure of the PAGEEJECT device. FIG. 17 is a flowchart showing the format control code processing procedure, FIG. 18 is a flowchart showing received data interrupt processing, FIG. 19 is a flowchart showing packet process processing, and FIG. 20 is a flowchart showing print startup processing. Figure 21 shows JOB
Flowchart showing OUT processing 2, FIG. 22 is a flowchart showing intermediate code processing, FIG. 23 is a flowchart showing print startup processing, and FIG. 24 is EXPEND
25 is a flowchart showing the user process, FIG. 26 is a time chart showing an example of process switching timing, FIG. 27 is a flowchart showing the test print processing procedure, and FIG. 28 is a flowchart showing the reception interrupt reception ring. 2 is a format diagram showing an example of transmission data from a data processing device. FIG. 61... Timer interrupt 62... Scheduler 63... Start process 64... Packet process 65... Host process 66... User process patent Applicant Agent for Minolta Camera Co., Ltd.
Patent Attorney Noboru Kono No. 1 Figure 2 Figure 3 Figure 4 Figure 6 (a) (b) Figure 7 Figure 10 Wataru 11 Figure 14 Figure 16 #160 Figure 17 Figure 20 Figure 21 Figure 22 (b) #400 #42
0Figure 23Figure 27Figure 28 ESCESCUI ESCESCUOFigure

Claims (1)

【特許請求の範囲】 1、印写部と、これによって印写されるデータを与える
データ処理装置との間に介装され、印写部の動作の制御
を司るプリンタ制御装置において、 前記印写部の動作を制御するためのプログラム複数を格
納するメモリと、 前記データ処理装置から与えられた所定信号に応答して
、前記メモリに格納された任意のプログラムを起動する
プログラム起動手段と を具備することを特徴とするプリンタ制御装置。 2、前記メモリは前記印写部に固有のプログラムが予め
格納してあるエリアを有する特許請求の範囲第1項記載
のプリンタ制御装置。 3、印写部と、これによって印写されるデータを与える
データ処理装置との間に介装され、印写部の動作の制御
を司るプリンタ制御装置において、 前記印写部の動作を制御するためのプログラム複数を格
納するメモリと、 外部から与えられたプログラムを前記メモリに格納させ
る手段と、 前記データ処理装置から与えられた所定信号に応答して
、前記メモリに格納された任意のプログラムを起動する
プログラム起動手段と を具備することを特徴とするプリンタ制御装置。 4、前記メモリは前記印写部に固有のプログラムが予め
格納してあるエリアを有する特許請求の範囲第3項記載
のプリンタ制御装置。 5、印写部と、これによって印写されるデータを与える
データ処理装置との間に介装され、印写部の動作の制御
を司るプリンタ制御装置において、 前記印写部に固有のプログラムを含む複数の印写動作制
御プログラムを格納するメモリと、 外部から与えられたプログラムを前記メモリに格納させ
る手段と、 前記データ処理装置から与えられた所定信号に応答して
、前記メモリに格納された任意のプログラムを起動する
プログラム起動手段と、 前記固有のプログラム及び他の印写動作制御用プログラ
ムを時分割的に実行する手段とを具備することを特徴と
するプリンタ制御装置。
[Scope of Claims] 1. A printer control device that is interposed between a printing section and a data processing device that provides data to be printed by the printing section and controls the operation of the printing section, comprising: a memory storing a plurality of programs for controlling operations of the unit; and a program starting means for starting any program stored in the memory in response to a predetermined signal given from the data processing device. A printer control device characterized by: 2. The printer control device according to claim 1, wherein the memory has an area in which a program unique to the printing section is stored in advance. 3. In a printer control device that is interposed between a printing section and a data processing device that provides data to be printed by the printing section and controls the operation of the printing section, the printer control device controls the operation of the printing section. a memory for storing a plurality of programs for the program; a means for storing an externally applied program in the memory; and a means for storing an arbitrary program stored in the memory in response to a predetermined signal applied from the data processing device. 1. A printer control device comprising: program starting means for starting a program. 4. The printer control device according to claim 3, wherein the memory has an area in which a program unique to the printing section is stored in advance. 5. In a printer control device that is interposed between a printing section and a data processing device that provides data to be printed by the printing section and controls the operation of the printing section, a program specific to the printing section is executed. a memory for storing a plurality of printing operation control programs including a plurality of printing operation control programs; means for storing a program given from the outside in the memory; and means for storing a program given from the outside in the memory; What is claimed is: 1. A printer control device comprising: program starting means for starting an arbitrary program; and means for time-sharingly executing the unique program and other printing operation control programs.
JP63087569A 1988-04-08 1988-04-08 Printer control device Expired - Lifetime JP2687408B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP63087569A JP2687408B2 (en) 1988-04-08 1988-04-08 Printer control device
US07/335,503 US5036476A (en) 1988-04-08 1989-04-10 Printer control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63087569A JP2687408B2 (en) 1988-04-08 1988-04-08 Printer control device

Publications (2)

Publication Number Publication Date
JPH01258968A true JPH01258968A (en) 1989-10-16
JP2687408B2 JP2687408B2 (en) 1997-12-08

Family

ID=13918631

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63087569A Expired - Lifetime JP2687408B2 (en) 1988-04-08 1988-04-08 Printer control device

Country Status (1)

Country Link
JP (1) JP2687408B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04113865A (en) * 1990-09-05 1992-04-15 Canon Inc Printer

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60214035A (en) * 1984-04-09 1985-10-26 Shinko Electric Co Ltd Printer interface device
JPS62237520A (en) * 1986-04-08 1987-10-17 Nec Corp Printer control device
JPS63216125A (en) * 1987-03-04 1988-09-08 Fuji Xerox Co Ltd Printer capable of emulating device type

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60214035A (en) * 1984-04-09 1985-10-26 Shinko Electric Co Ltd Printer interface device
JPS62237520A (en) * 1986-04-08 1987-10-17 Nec Corp Printer control device
JPS63216125A (en) * 1987-03-04 1988-09-08 Fuji Xerox Co Ltd Printer capable of emulating device type

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04113865A (en) * 1990-09-05 1992-04-15 Canon Inc Printer

Also Published As

Publication number Publication date
JP2687408B2 (en) 1997-12-08

Similar Documents

Publication Publication Date Title
JP3007103B2 (en) Printing control device
JPH01174453A (en) Printer controller
JP4029391B2 (en) Printer
JP2007301881A (en) Multiport printing apparatus
JPH01258968A (en) Printer control device
JP2737983B2 (en) Printing device and display device for displaying status of printing device
JP3010559B2 (en) Printing system and printing control method and apparatus
JP2816184B2 (en) Printing control device
JPH0221324A (en) Printer controller
JPH044171A (en) Printer control device
JP3129679B2 (en) Printer
JPS63231957A (en) Controller for printer
US5303335A (en) Image forming apparatus
JP2770351B2 (en) Printer
JP2000305744A (en) Information processor, method and system for controlling printing and storage medium
JPH044172A (en) Printer control device
JPS63288771A (en) Controller for printer
JP2737983C (en)
JP2745514B2 (en) Printer control device
JP2000006476A (en) Image output apparatus and its control method
JP2003285507A (en) Printer
JP2982007B2 (en) Display device
JPH0465262A (en) Page printer
JP2792216B2 (en) Printer device
JPH02120060A (en) Printer controlling device

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080822

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080822

Year of fee payment: 11