JPS63178666A - Communication control equipment - Google Patents
Communication control equipmentInfo
- Publication number
- JPS63178666A JPS63178666A JP62009079A JP907987A JPS63178666A JP S63178666 A JPS63178666 A JP S63178666A JP 62009079 A JP62009079 A JP 62009079A JP 907987 A JP907987 A JP 907987A JP S63178666 A JPS63178666 A JP S63178666A
- Authority
- JP
- Japan
- Prior art keywords
- line
- bit
- printer
- data
- section
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 40
- 238000001514 detection method Methods 0.000 claims abstract description 30
- 238000000034 method Methods 0.000 abstract description 61
- 238000012545 processing Methods 0.000 abstract description 45
- 238000007906 compression Methods 0.000 abstract description 5
- 230000006835 compression Effects 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 57
- 230000006870 function Effects 0.000 description 13
- 238000012546 transfer Methods 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000010365 information processing Effects 0.000 description 9
- 238000013144 data compression Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 7
- 101150102884 rpo8 gene Proteins 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 4
- 239000000872 buffer Substances 0.000 description 3
- 101150029016 rpo3 gene Proteins 0.000 description 3
- 101100063942 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) dot-1 gene Proteins 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
Landscapes
- Handling Of Cut Paper (AREA)
- Facsimile Transmission Control (AREA)
Abstract
Description
【発明の詳細な説明】
技東分互
この発明は、ファクシミリ装置からのデータを受信して
プリンタに出力する通信制御装置に関する。DETAILED DESCRIPTION OF THE INVENTION This invention relates to a communication control device that receives data from a facsimile machine and outputs it to a printer.
従】け1区
一般に、文書作成装置(ワードプロセッサ)やパーソナ
ルコンピュータ等の情報処理装置においては情報通信の
要求が高まっており、このような要求に応えるものとし
て例えば情報処理装置のプリンクに接続してファクシミ
リ送信機能を有する通信端末装置(これを「ファクシミ
リ装置」と称する)からのデータを受信して、この受信
したデータをプリンタに印字させる通信制御装置が考え
られる。In general, there is an increasing demand for information communication in information processing devices such as document processing devices (word processors) and personal computers. A communication control device may be considered that receives data from a communication terminal device (referred to as a "facsimile device") having a facsimile transmission function and causes a printer to print the received data.
ところが、このようにファクシミリ装置からの受信デー
タを情報処理装置のプリンタで印字する場合、送信側の
用紙サイズ以上の用紙を使用しなければデータが欠落し
てしまうという問題を生じる。However, when data received from a facsimile device is printed using a printer of an information processing device, a problem arises in that data is lost unless paper of a size larger than that of the sending side is used.
目 的
この発明は上記の点に鑑みてなされたものであり、適切
な用紙を使用できるようにすることを目的とする。Purpose This invention was made in view of the above points, and its purpose is to enable the use of appropriate paper.
豊−處
この発明は上記の目的を達成するため、受信データに基
づいて印刷領域を検出し、この検出結果に基づいて用紙
サイズを判定する機能を備えたものである。In order to achieve the above object, the present invention is provided with a function of detecting a print area based on received data and determining the paper size based on the detection result.
以下、この発明の一実施例に基づいて具体的に説明する
。Hereinafter, a detailed explanation will be given based on one embodiment of the present invention.
第2図はこの発明を実施した通信制御装置を備えた情報
処理システムの一例を示すブロック図である。FIG. 2 is a block diagram showing an example of an information processing system equipped with a communication control device embodying the present invention.
この情報処理システムは、文書作成編集装置(ワードプ
ロセッサ)あるいはパーソナルコンピュータ等のホスト
1と、印刷装置としての例えばサーマルプリンタ、イン
クジェットプリンタ、レーザプリンタ等のプリンタ2と
を備え、ホスト1にはセントロニクスインタフェースコ
ネクタ4゜5及びケーブル6を介してファクシミリ受信
機能を有する通信端末装置(以下では「ファクシミリ装
置」と称する)への送信機能及びファクシミリ装置から
の受信機能を有する通信制御装置3を接続し、この通信
制御装@3にはセントロニクスインタフェースコネクタ
7.8及びケーブル9を介してプリンタ2を接続し、更
に通信制御装置3は回gioに接続している。This information processing system includes a host 1 such as a document creation/editing device (word processor) or a personal computer, and a printer 2 such as a thermal printer, inkjet printer, or laser printer as a printing device, and the host 1 has a Centronics interface connector. A communication control device 3 having a function of transmitting to a communication terminal device (hereinafter referred to as a "facsimile device") having a function of receiving a facsimile and a function of receiving from a facsimile device is connected via a cable 6 and a communication control device 3 having a function of transmitting to and receiving from a facsimile device. The printer 2 is connected to the control device @3 via a Centronics interface connector 7, 8 and a cable 9, and the communication control device 3 is further connected to the GIO.
この情報処理システムにおいて、通信制御装置3を使用
しないで単に情報処理装置として使用するときには、ホ
スト1とプリンタ2とを直接コネクタ4,5及びケーブ
ル6を介して接続すればよい。In this information processing system, when the communication control device 3 is not used and the information processing system is simply used as an information processing device, the host 1 and the printer 2 may be directly connected via the connectors 4 and 5 and the cable 6.
このように通信制御装@3はホスト1とプリンタ2との
間に接続又は取外すことができるので、ホスト1及びプ
リンタ2に何等の変更を伴なうことなく、情報処理シス
テムにファクシミリ装置への送信機能及びファクシミリ
装置からの受信機能を持たせた通信端末装置として使用
することができる。In this way, the communication control device @3 can be connected or removed between the host 1 and the printer 2, so it is possible to connect the information processing system to the facsimile device without making any changes to the host 1 or the printer 2. It can be used as a communication terminal device that has a sending function and a receiving function from a facsimile machine.
なお、ファクシミリ装置からの受信のみを行なう場合に
はホスト1は不要であり、通信制御装置3とプリンタ2
とを接続することによってファクシミリ装置からの受信
機能を有する通信端末装置として使用できる。Note that when only receiving data from a facsimile machine, the host 1 is not necessary, and the communication control device 3 and printer 2 are required.
By connecting it to a facsimile device, it can be used as a communication terminal device having a function of receiving data from a facsimile device.
次に、この通信制御装置3の受信機能の概要を第1図を
参照して説明する。Next, an overview of the receiving function of this communication control device 3 will be explained with reference to FIG.
相手先ファクシミリ装置から回線制御装置(NCU)1
1及びモデム12を介してデータが送信されてきたとき
には、通信手順制御部13は相手先ファクシミリ装置か
ら受信した圧縮コード(FAX画情報)をデコードライ
ンチェック部14に渡す。そこで、このデコードライン
チェック部14は、圧縮コードのままランレングスチェ
ックをして正しいラインか否かを判定し、正しいライン
のときには受信した圧縮コードをFAX画情報蓄積部1
5に順次格納し、また印刷ドツト領域検出部16に受信
した圧縮コードを与える。From the destination facsimile machine to the line control unit (NCU) 1
1 and modem 12, the communication procedure control unit 13 passes the compressed code (FAX image information) received from the destination facsimile machine to the decode line check unit 14. Therefore, the decoded line checking unit 14 performs a run length check on the compressed code to determine whether it is a correct line or not. If the line is correct, the decoded line check unit 14 transfers the received compressed code to the FAX image information storage
5, and also provides the received compressed code to the print dot area detection section 16.
この印刷ドツト領域検出部16は受領した圧縮コードに
基づいて各ライン毎に何ビット目から何ビット目まで黒
データがあるかを検出し、この検出結果に基づいて各頁
毎に対応する用紙サイズを判定し、この判定した用紙サ
イズを示す情報(用紙サイズ情報)をFAX画情報蓄積
部15に格納する。This print dot area detection unit 16 detects from which bit to which bit there is black data for each line based on the received compressed code, and based on this detection result, it determines the paper size corresponding to each page. is determined, and information indicating the determined paper size (paper size information) is stored in the FAX image information storage section 15.
この状態で、受信印刷指示部17によってFAX画情報
蓄積部15に対して受信データの印刷指示が与えられる
と、FAX画情報蓄積部15は印刷ドツト領域検出部1
6から受領している用紙サイズ情報を紙サイズ表示部1
8に表示した後、格納されている圧縮コート(受信デー
タ)をデコード処理部1日に送る。In this state, when the reception print instruction section 17 gives an instruction to print the received data to the FAX image information storage section 15, the FAX image information storage section 15 prints the print dot area detection section 1.
The paper size information received from 6 is displayed in paper size display section 1.
8, the stored compressed code (received data) is sent to the decoding processing unit 1.
このデコード処理部19は例えば既知のNSFフレーム
を使用して相手先通信端末装置が自己と同等の機能を有
する通信端末装置(ここでは「CCFAXI と称する
)か通常のファクシミリ装置(FAX)かを検知して、
この検知結果に応じて相手側がCCFAXのときには受
領した圧縮コードをデコード(伸長)すると共にドツト
密度変換(間引き)してイメージデータを作成し、また
相手側がFAXのときには受領した圧縮コードをデコー
ドしてイメージデータを作成し、作成したイメージデー
タをプリンタ出力データ制御部20へ送出する。This decoding processing unit 19 uses, for example, a known NSF frame to detect whether the other party's communication terminal device is a communication terminal device (herein referred to as "CCFAXI") having the same functions as itself or a normal facsimile device (FAX). do,
Depending on the detection result, if the other party is a CCFAX, the received compressed code is decoded (expanded) and dot density converted (thinned) to create image data, and if the other party is a FAX, the received compressed code is decoded. Image data is created and the created image data is sent to the printer output data control section 20.
このプリンタ出力データ制御部20はデコード処理部1
9から受領したイメージデータをプリンタ出力インタフ
ェース(I/F)21を介してプリンタに出力して印刷
させる。This printer output data control section 20 is a decoding processing section 1
The image data received from 9 is output to the printer via a printer output interface (I/F) 21 to be printed.
第3図はこの通信制御装置3の構成を具体的に示すブロ
ック図である。FIG. 3 is a block diagram specifically showing the configuration of this communication control device 3. As shown in FIG.
この通信制御装置3は、CPU、ROM、RAM及びI
lo等からなるマイクロコンピュータ(CPU)31と
、ビット・マツプ変換処理、データ圧縮処理、デコード
ラインチェック処理、印刷領域検出及び用紙サイズ判定
処理、デコード処理等この装置全体の制御に係わる制御
プログラム等を格納したROM32と、ホスト側からの
データ(これを「入力データ」と称する)を変換したビ
ット・マツプを格納するワークメモリ及びビット・マツ
プをデータ圧縮して生成した圧縮コード並びに受信した
圧縮コードを格納するFAX画情報菩積エリア(圧縮コ
ード格納エリア)並びにその他のデータを格納するデー
タメモリ等を構成するRAM33とを備えている。This communication control device 3 includes a CPU, ROM, RAM and I
A microcomputer (CPU) 31 consisting of LO, etc., and control programs related to the overall control of this apparatus such as bit map conversion processing, data compression processing, decode line check processing, print area detection and paper size determination processing, decoding processing, etc. The stored ROM 32, a work memory that stores a bit map obtained by converting data from the host side (this is referred to as "input data"), a compressed code generated by compressing the bit map, and a received compressed code. It is provided with a RAM 33 that constitutes a data memory for storing a FAX image information storage area (compressed code storage area) and other data.
これ等によって第1図の通信手順制御部13゜デコード
ラインチェック部i4.FAX画情報蓄積部15.印刷
ドツト領域検出部1日、デコード処理部1日及びプリン
タ出力データ制御部20を構成している。As a result, the communication procedure control unit 13° decode line check unit i4. FAX image information storage section 15. It constitutes a print dot area detection section 1, a decoding processing section 1, and a printer output data control section 20.
また、この通信制御装置3は2文書作成編集装置あるい
はパーソナルコンピュータ等のホスト1側からのデータ
を入力するプリンタ人力I/Fとしてのセントロニクス
受信部インタフェース(I/F) 34と、ホスト1か
らの入力データをプリンタ2等の印刷装置に出力する第
1図のプリンタ出力I/F21としてのセントロニクス
送信部工/F35とを備えている。The communication control device 3 also has a Centronics receiver interface (I/F) 34 as a printer manual I/F for inputting data from the host 1 such as a document creation/editing device or a personal computer, and The Centronics transmitting unit/F 35 is provided as the printer output I/F 21 in FIG. 1 for outputting input data to a printing device such as the printer 2.
なお、セントロニクスインタフェースで使用する信号の
内のストローブ(STROBE)、データ(DATAI
〜DATA8)、アクノーリッジ(ACKNLG)及び
ビジィ(BUSY)についてはマイクロコンピュータ3
1に入力し、その他の信号についてはセントロニクス受
信部I/F34から直接セントロニクス送信部I/F)
5に出力している。Note that among the signals used in the Centronics interface, the strobe (STROBE) and data (DATAI)
~DATA8), acknowledge (ACKNLG) and busy (BUSY) are microcomputer 3.
1, and other signals are input directly from the Centronics receiver I/F 34 to the Centronics transmitter I/F)
It is output to 5.
さらに、この通信制御装置3は、操作スイッチ及び表示
器並びにベルを付設した第1図の受信印刷指示部17及
び紙サイズ表示部18を含む操作ユニット3Bを備え、
この操作ユニット3日との間でのデータ送受を司るスイ
ッチ・LEDポート37を備えている。Furthermore, this communication control device 3 includes an operation unit 3B including a reception print instruction section 17 and a paper size display section 18 shown in FIG. 1, each equipped with an operation switch, a display, and a bell.
It is equipped with a switch/LED port 37 that controls data transmission and reception with this operating unit.
なお、操作ユニット3日には、ファクシミリ装置への送
信開始を指示及び受信データの印字開始指示並びに手動
受信指示等をするためのスタートキーと、送信モードと
してホスト側からの入力データをプリンタに出力するプ
リンタモードと入力データをファクシミリ装置(FAX
)に送信するFAXモードと入力データをプリンタに出
力しFAXに送信するプリンタ・FAXモードとを選択
するモードセレクトキーと、自動受信を指示する自動キ
ーと、送信終了指示及び1ページの途中でFAX画情報
格納エリアがフル状態になったときに当該ページまでの
送信指示又は当該ページ以降のページの送信指示並びに
印字終了指示等をするためのストップキーと、FAX画
情報格納エリアに格納されている画情報(圧縮コード)
のクリア指示等をするクリアキーとを備えている。The operation unit 3 has a start key to instruct the facsimile machine to start sending, to start printing received data, to instruct manual reception, etc., and to output input data from the host side to the printer in the sending mode. The printer mode and input data to be
), the mode select key to select the printer/FAX mode to output input data to the printer and send it to the fax, the automatic key to instruct automatic reception, the end of transmission instruction, and the fax mode in the middle of one page. A stop key is stored in the FAX image information storage area, and a stop key is used to instruct transmission up to the relevant page, send instructions for subsequent pages, and instruct printing to end when the image information storage area becomes full. Image information (compression code)
It is equipped with a clear key that gives clear instructions, etc.
また、この操作ユニット36には、送信モードを表示す
るためのモード表示器と、各種の状態(FAX画情報蓄
積エリアのフル状態等)を表示するスティタス表示器と
、用紙サイズを表示する用紙サイズ表示器及びページ数
を表示するページ数表示器とを備えている。The operation unit 36 also includes a mode display for displaying the transmission mode, a status display for displaying various statuses (such as the full status of the FAX image information storage area), and a paper size display for displaying the paper size. It is equipped with a display and a page number display that displays the number of pages.
さらにまた、この通信制御袋[は、公衆電話回線を介し
てファクシミリ装置との間で通信を行なうために、マル
チプロトコル・シリアルコントロール(MPSC)38
を備えると共に、モデム(MODEM)59及び回線制
御装置(A−ANCU)40を接続している。Furthermore, this communication control bag [is equipped with a multi-protocol serial control (MPSC) 38 to communicate with a facsimile machine via a public telephone line.
It is also connected to a modem (MODEM) 59 and a line control unit (A-ANCU) 40.
次に、このように構成したこの実施例の作用について第
4図以降をも参照して説明する。Next, the operation of this embodiment configured as described above will be explained with reference to FIG. 4 and subsequent figures.
まず、ホスト側で作成した文書等をファクシミリ装置に
送信する送信モードにおける入力データの圧縮コード化
について説明する。First, compression encoding of input data in a transmission mode in which a document or the like created on the host side is transmitted to a facsimile machine will be described.
最初にホスト側から送られてくるプリンタのヘッドコン
トロールコマンドとこのコマンドの解析について第4図
をも参照して説明する。First, the printer head control command sent from the host side and the analysis of this command will be explained with reference to FIG. 4.
ホスト側からプリンタに対して送られるヘッドコントロ
ールコマンドのシンボル及び機能は次のとおりである。The symbols and functions of head control commands sent from the host to the printer are as follows.
BLF :逆改行;印字用紙を逆送りする。BLF: Reverse line feed; feeds the printing paper backwards.
LF二改行;印字の開始と改行。LF2 line feed: Start of printing and line feed.
FF:フォームフイード;次の開始行まで用紙を送る。FF: Form feed; feeds the paper to the next start line.
CR:復帰;印字の開始と復帰。CR: Return; Start and return of printing.
STP ニストップ;ホームポジションに戻る。STP Nistop; Return to home position.
CAN :キャンセル;バッファをクリアする。CAN: Cancel; Clear the buffer.
ESC、%、1.nl、n2 :イメージ転送;イメー
ジ印字をする。ESC, %, 1. nl, n2: Image transfer; image printing.
ESC,%、3.nl、n2 :右移動;指定ドツト数
だけ右移動。ESC, %, 3. nl, n2: Move right; Move right by the specified number of dots.
ESC、%+4+nl+n2 :左移動;指定ドツト数
だけ左移動。ESC, %+4+nl+n2: Move left; Move left by the specified number of dots.
ESC,+ 、nl :逆ピツチ改行;指定ピッチで逆
改行する。ESC, +, nl: Reverse pitch line feed; Reverse line feed at the specified pitch.
ESC,−、nl :ピツチ改行;指定ピッチで改行す
る。ESC, -, nl: Pitch line feed; Line feed at specified pitch.
ESC,6:6LPI設定;6LPTの改行を設定する
。ESC, 6: 6LPI setting; Set 6LPT line feed.
ESC,8:8LPI設定;8LPIの改行を設定する
。ESC, 8: 8LPI setting; Sets 8LPI line feed.
ESC,R:初期設定;電源投入後の状態にする。ESC, R: Initial setting; Set to the state after the power is turned on.
ESC,V:排出;用紙を排出する。ESC, V: Eject; Ejects paper.
ESC,Z、nl、n2 :複数改行;指定された行数
分改行する。ESC, Z, nl, n2: Multiple line breaks; Line breaks for the specified number of lines.
このようなヘッドコントロールコマンドがホスト側から
送出されたときの受領側でのコマンド解析処理は、第4
図に示すように、ボートに入力されたデータを取込んで
内部RAMの予め定めたラベル名がrCMDJのアドレ
ス(以下rCMDJと称す)に格納する。When such a head control command is sent from the host side, command analysis processing on the receiving side is performed by the fourth
As shown in the figure, data input to the boat is taken in and stored in the internal RAM at an address of rCMDJ with a predetermined label name (hereinafter referred to as rCMDJ).
そして、このCMDに格納したデータがrESC」か否
かを判別して、rESCJでなければ、そのコマンドが
「LF」(ラインフィード;改行)。Then, it is determined whether the data stored in this CMD is "rESC" or not, and if it is not rESCJ, the command is "LF" (line feed; new line).
「CR」(キャリッジリターン)、rFFJ(フオーム
フィード;改頁)、rBr=F」(逆改行)。"CR" (carriage return), rFFJ (form feed; page break), rBr=F" (reverse line feed).
rSTPJ (ストップ)、rcANJ (キャンセル
)のいずれであるかを判断する。Determine whether it is rSTPJ (stop) or rcANJ (cancel).
また、「ESC」であれば、次のデータをボートからC
MDに取込んで、そのデータが「%」か否かを判別し、
「%」でなければそのデータが「+」(逆ピツチ改行)
、r−J(ピッチ改行)。Also, if it is "ESC", the next data is sent from the boat to C.
Import it into MD and determine whether the data is "%" or not,
If it is not “%”, the data is “+” (reverse pitch line feed)
, r-J (pitch line break).
「R」(イニシャライズ)、rVJ(排出)、rZ」(
複数改行)、r6」又は「8」(改行ピッチ変更)かを
判断する。"R" (initialize), rVJ (discharge), rZ" (
(multiple line feeds), r6'', or ``8'' (line feed pitch change).
さらに、そのデータがr%」であれば、次のデータをボ
ートからCM Dに取込んで、そのデータが「1」(イ
メージモード)、r3J(右移動)。Furthermore, if the data is "r%", the next data is taken from the boat to the CMD, and the data is "1" (image mode) and r3J (move right).
「4」(左移動)かを判断する。Determine whether it is "4" (move left).
次に、ホストからプリンタに送出される印字データ(文
字データ)について第5図及び第6図を参照して説明す
る。Next, print data (character data) sent from the host to the printer will be explained with reference to FIGS. 5 and 6.
この実施例ではプリンタとして文字コードを文字パター
ンに変換するキャラクタジェネレータを内蔵していない
プリンタを使用して、ホスト側は文字データをイメージ
データで送出し、プリンタ側は1印字行(1ライン)分
のイメージデータを受領して改行系コマンドを受けたと
きに印字動作を開始するものとする。In this example, a printer that does not have a built-in character generator that converts character codes into character patterns is used as a printer.The host side sends character data as image data, and the printer side sends out character data for one print line (one line). It is assumed that the printing operation is started when the image data of is received and a line feed command is received.
ここで、プリンタのヘッドをdot 1〜dot24の
24個の印字素子を列設した構成として、1印字行(行
方向の印字範囲)のドツト数mを例えば1440ドツト
とする。Here, it is assumed that the printer head has a structure in which 24 printing elements dot 1 to dot 24 are arranged in a row, and the number m of dots in one printing line (printing range in the row direction) is 1440 dots, for example.
このとき、ホスト側は1ビツト列(24ドツト)分のイ
メージデータを8ビツト(1バイト)単位で3回に分け
て転送して、順次1ライン(1440列)分転送するこ
とになる。At this time, the host side transfers one bit string (24 dots) worth of image data in three 8-bit (1 byte) units, and sequentially transfers one line (1440 columns).
すなわち、1ビツト列(24ドツト)分のイメージデー
タは、第5図(イ)に示す第一転送データ。That is, the image data for one bit string (24 dots) is the first transfer data shown in FIG. 5(a).
同図(ロ)に示す第二転送データ、同図(ハ)に示す第
三転送データの順に送られて、各転送データは第6図(
イ)、(ロ)、(ハ)に示す領域に印字され、このデー
タ転送が1ライン(印字範囲)のドツト数m(例えばm
=1440ドツト)回繰返される。The second transfer data shown in FIG. 6 (B) and the third transfer data shown in FIG.
The data is printed in the areas shown in (a), (b), and (c), and this data transfer is performed in one line (printing range) with the number of dots m (for example, m
= 1440 dots) times.
したがって、1ライン分のイメージデータは、第5図に
先付文字で示すように第0バイト、第1バイト、第2バ
イト、第3バイト、・・・第nバイトの順で転送される
。Therefore, one line of image data is transferred in the order of 0th byte, 1st byte, 2nd byte, 3rd byte, . . . nth byte, as shown by prefix characters in FIG.
このように、ホスト側は横1ビット縦24ビツトの1ド
Yト列分のデータを1バイト単位に分けて縦方向に3回
転送し、1ラインのドツト数(mドツト)回横方向に順
次転送する。In this way, the host side divides the data for 1 dot Y column of 1 bit horizontally and 24 bits vertically into 1 byte units and transfers it three times in the vertical direction, and transfers it horizontally three times in the horizontal direction for the number of dots in one line (m dots). Transfer sequentially.
ところが、データ圧縮は行方向に1ドツトライン毎に例
えば8ビット単位で行なわなければならない。つまり例
えば第5図に破線で示すように第Oバイト、第3バイト
、・・・・・、第21バイ1−の同一ビットを合わせて
8ビツト(1バイ1−)のデータとしてデータ圧縮を行
なわなければならない。However, data compression must be performed in units of, for example, 8 bits per dot line in the row direction. In other words, for example, as shown by the broken line in Figure 5, the same bits of the Oth byte, 3rd byte, ..., 21st byte 1- are combined to form 8-bit data (1 byte 1-) and the data is compressed. must be done.
このとき、入力されたイメージデータを例えば第7図に
示すようにそのまま入力順にワークメモリに格納する、
つまり例えばワークエリアの所定のアドレスに第0バイ
トの第Oビット〜第7ビツトを格納(図中のroloJ
は「第0バイト/第0ビツトjを表わす、その他も同様
である)し、次のアドレスに第1バイトの第Oビット〜
第7ビツトを格納することが考えられる。At this time, the input image data is stored in the work memory in the input order as shown in FIG. 7, for example.
In other words, for example, store the 0th bit of the 0th byte to the 7th bit at a predetermined address in the work area (roloJ in the figure).
"represents the 0th byte/0th bit j, and the same applies to the others), and the next address is the Oth bit of the 1st byte ~
It is conceivable to store the 7th bit.
このようにイメージデータをワークメモリに格納すると
、データ圧縮時には例えば第Oバイトの第Oビットを読
出し、次に読出しアドレスを3アドレス分更新して第3
バイトの第0ビツトを読出し、というようにして第21
バイトの第0ビツトまでの8ビツト分のデータを3アド
レスずつ読出しアドレスを更新しながら読出した後、デ
ータ圧縮をすることになる。When image data is stored in the work memory in this way, when compressing the data, for example, the O-th bit of the O-th byte is read out, the read address is updated by three addresses, and the third
Read the 0th bit of the byte, and so on.
After reading 8 bits of data up to the 0th bit of the byte in three addresses at a time and updating the addresses, the data is compressed.
勿論このようにしてもよいのであるが、これでは入力デ
ータのデータ圧縮処理に時間がかかり、特にプリンタと
ファクシミリ装置に同時出力(送信)するときには1ラ
イン分の印字データ(イメージデータ)のデータ圧縮が
終るまで次ラインの印字データを受けられないのでプリ
ント出力が遅くなるという不都合が生じてくる。Of course, you can do it this way, but this takes time to compress the input data, and especially when outputting (sending) to a printer and facsimile at the same time, it takes time to compress the print data (image data) for one line. Since the print data for the next line cannot be received until the printout is completed, there is an inconvenience that print output is delayed.
そこで、この実施例においては、ホストからのイメージ
データをワークメモリに格納するときに予めデータ圧縮
時に使用する1ドツトライン毎の8ビツト(1バイト)
のデータに変換して格納する(これが「ビット・マツプ
に変換(展開)する」処理である)。Therefore, in this embodiment, when storing image data from the host in the work memory, 8 bits (1 byte) per 1 dot line are used for data compression.
(This is the process of converting (expanding) into a bit map.)
つまり、第8図に示すようにワークメモリに予め第0ド
ツトライン〜第23ドツトラインまで1ドツトライン毎
に8ビツトずつイメージデータを格納するエリアを割付
ける。したがって、実際のメモリ空間は各ドツトライン
毎の24個のエリアとなる。なお、ここでは便宜上各ド
ツトラインエリアの最初のアドレス°を第Oアドレス、
以下筒1゜アドレス・・・と称することにする。That is, as shown in FIG. 8, an area for storing image data of 8 bits per dot line from the 0th dot line to the 23rd dot line is allocated in advance in the work memory. Therefore, the actual memory space is 24 areas for each dot line. For convenience, here, the first address ° of each dot line area is referred to as the O-th address,
Hereinafter, this will be referred to as cylinder 1° address...
そして、第0バイトのデータを受けたときには、第Oビ
ットを第0ドツトラインエリアの第Oアドレスの第0ビ
ツトb0に格納(図中のroloJはr第0バイト/第
0ビツトjを表わす、その他も同様である)し、第1ビ
ツトを第1ドツトラインエリアの第Oアドレスの第0ビ
ツトb0に格納し、以下同様にして第3ビツト〜第7ビ
ツトを第1〜第7ドツトラインエリアの各第Oアドレス
の第0ビツトb0にそれぞれ格納する。When data of the 0th byte is received, the Oth bit is stored in the 0th bit b0 of the Oth address of the 0th dot line area (roloJ in the figure represents the rth byte/0th bit j, The same applies to other bits), and stores the 1st bit in the 0th bit b0 of the O address in the 1st dot line area, and similarly stores the 3rd to 7th bits in the 1st to 7th dot line areas. are stored in the 0th bit b0 of each Oth address.
また、第1バイトのデータを受けたときには、第Oビッ
トを第8ドツトラインエリアの第Oアドレスの第0ビツ
トb0に格納し、以下同様にして第1ビツト〜第7ビツ
トを第9〜第15ドツトラインエリアの各第1アドレス
の第0ビツトb0にそれぞれ格納する。When the first byte of data is received, the Oth bit is stored in the 0th bit b0 of the Oth address in the 8th dot line area, and the 1st to 7th bits are stored in the 9th to 9th bits in the same manner. It is stored in the 0th bit b0 of each first address in the 15-dot line area.
さらに、第2バイトのデータについても同様の処理を行
ない、次に第3バイトのデータを受けたときには、第0
ビツトを第0ドツトラインエリアの第0アドレスの第1
ビツトbiに格納し、第1ビツトを第1ドツトラインの
第1アドレスの第1ビツトb1に格納し、以下同様にし
て第2ビツト〜第7ビツトを第1〜第7ドツトラインエ
リアの各第1アドレスの第1ビツトb□にそれぞれ格納
する。Furthermore, the same process is performed for the second byte data, and when the third byte data is received next, the 0th byte data is
Set the bit to the 1st bit of the 0th address of the 0th dot line area.
The first bit is stored in the first bit b1 of the first address of the first dot line, and the second to seventh bits are stored in the first bit of each of the first to seventh dot line areas in the same manner. Each is stored in the first bit b□ of the address.
これ等の処理を繰返し実行することによって。By repeatedly performing these processes.
第8図に示すように例えば第0ドツトラインエリアの第
0アドレスの第Oビットb。−第7ビツトb7には、入
力データの第0.第3.第6.第9.・・・・・・第2
1バイトの各第0ビツトが8ビツトデータとして格納さ
れ、同様に例えば第8ドツトラインエリアの第Oアドレ
スの第Oビットb0〜第7ビツトb7には、入力データ
の第1.第4.第7.第10、第13.第16.第19
.第22バイトの各第0ビツトが8ビツトデータとして
格納される。As shown in FIG. 8, for example, the 0th bit b of the 0th address of the 0th dot line area. - The 7th bit b7 contains the 0th . Third. 6th. 9th. ...Second
Each 0th bit of one byte is stored as 8-bit data, and similarly, for example, the 0th bit b0 to the 7th bit b7 of the Oth address in the 8th dot line area contain the 1st... 4th. 7th. 10th, 13th. 16th. 19th
.. Each 0th bit of the 22nd byte is stored as 8-bit data.
したがって、例えば第1ドツトラインのデータ圧縮を行
なうときにはワークエリアの第0ドツ1〜ラインエリア
の第0アドレスから順次1アドレスずつアドレス更新を
しながらそれぞれ8ビツト(1バイト)のデータを読出
すことによって、直ちにデータ圧縮を行なうことができ
、データ圧縮を高速で行なうことができる。Therefore, for example, when compressing data on the first dot line, data of 8 bits (1 byte) is read from each address while updating the addresses sequentially from the 0th dot 1 of the work area to the 0th address of the line area. , data compression can be performed immediately and data compression can be performed at high speed.
このようにしてホストからの入力データをビット・マツ
プに変換(展開)する場合、ファクシミリ装置の幅が1
728〜2560ドツトであるのに対して、この実施例
で使用しているプリンタの印字幅は1440ドツトであ
るので、データ変換時にラインの始めと終りにマージン
をとる必要がある。When converting (expanding) input data from the host into a bit map in this way, the width of the facsimile machine is 1
728 to 2,560 dots, whereas the printing width of the printer used in this embodiment is 1,440 dots, so it is necessary to provide margins at the beginning and end of the line during data conversion.
したがって、入力データをワークメモリにビット・マツ
プとして展開する場合には、概ね入力データの第Xバイ
ト目の第yビットは次式に従う変換によって出力データ
の1ドツトラインエリアの第Xバイト目の第Yビットに
配置すればよい。Therefore, when input data is developed as a bit map in work memory, the y-th bit of the X-th byte of the input data is converted to the y-th bit of the It may be placed in the Y bit.
X=8 Fw(x mad 3)+ l X/31 +
Fwy+M1/8Y=7 1 x/3 l mod 8
なお、上式中、Fw:ファクシミリ装置の幅(ドツト数
)、Ml:左側マージン量(ドツト数)。X=8 Fw(x mad 3)+l X/31+
Fwy+M1/8Y=7 1 x/3 l mod 8 In the above equation, Fw: width of facsimile machine (number of dots), Ml: left margin amount (number of dots).
mad 霊前側の値を後側の値で割ったときの余り、す
なわち例えば(x mad 3’)はXを3で割ったと
きの余りを意味する。mad The remainder when the value on the spiritual side is divided by the value on the rear side, for example (x mad 3') means the remainder when X is divided by 3.
また、第Yビットを求める式中の「7」はデータ圧縮と
の関係でそのままでは左(MSB)からのビット数にな
るのでこれを右側(L S B)からのビット数に変換
するための数値である。Also, "7" in the formula for determining the Y-th bit is related to data compression, so if it is left as it is, it will be the number of bits from the left (MSB), so to convert this to the number of bits from the right (LSB), It is a numerical value.
つまり、例えば第0ドツトラインについて云えば、前述
したように第O2第3.第6.第9.第12、第15.
第18.第21バイトの第0ビツトで1バイトのデータ
を生成する。That is, for example, regarding the 0th dot line, as mentioned above, the O2, 3rd, . 6th. 9th. 12th, 15th.
18th. One byte of data is generated with the 0th bit of the 21st byte.
このとき、そのままでは第5図に示すように第0バイト
の第0ビツトが1バイトデータの第7ビツト(MSB)
に対応し、第3バイトの第0ビツトが第6バイトに対応
し、以下同様にして第21バイトの第0ビツトが第0ビ
ツト(LSB)に対応することになるが、データ圧縮処
理との関係でこれを前述した第8図にも示すように第0
バイトの第0ビツトを第0ビツト(LSB)にし、第3
バイトの第0ビツトを第1ビツトにし、以下同様にして
第21バイトの第0ビツトを第7ビツト(MSB)にす
る必要がある。この変換を第Yビットを求める式中で数
値「7」からrlx−31mod8Jを減算して行なっ
ている。At this time, as shown in Figure 5, the 0th bit of the 0th byte becomes the 7th bit (MSB) of 1 byte data.
Correspondingly, the 0th bit of the 3rd byte corresponds to the 6th byte, and similarly, the 0th bit of the 21st byte corresponds to the 0th bit (LSB). In relation to this, as shown in Figure 8 mentioned above,
The 0th bit of the byte is set to the 0th bit (LSB), and the 3rd
The 0th bit of the byte must be made the 1st bit, and the 0th bit of the 21st byte must be made the 7th bit (MSB) in the same manner. This conversion is performed by subtracting rlx-31mod8J from the numerical value "7" in the formula for determining the Y-th bit.
次に、入力データを上述したビット・マツプに展開する
ために使用するワークメモリの構成について第9図を参
照して説明する。Next, the configuration of the work memory used to develop the input data into the above-mentioned bit map will be explained with reference to FIG.
ワークメモリは全体をDCR共有エリア、逆改行対応エ
リア、最新行作業エリアの三つに分割している。なお、
DCR(データ圧縮装置)はこの実施例ではマイクロコ
ンピュータ31で構成している。The work memory is divided into three areas: a DCR common area, a reverse line feed area, and a latest line work area. In addition,
The DCR (data compression device) is constituted by a microcomputer 31 in this embodiment.
最新行作業エリアは、プリントアウト中の最下行のエリ
アであり、プリンタ・ヘッドが縦方向に移動しないでプ
リントできる大きさ、すなわちプリンタ・ヘッドXFA
X幅の大きさ有し、例えばプリンタ・ヘッドを24ドツ
ト、FAX幅を1728ビツトとしたときには、24x
1728=41472ビツト=5184バイトの大きさ
を有する。The latest line work area is the bottom line area during printout, and is the size that can be printed without the printer head moving vertically, that is, the printer head XFA.
For example, if the printer head is 24 dots and the fax width is 1728 bits, then
It has a size of 1728=41472 bits=5184 bytes.
逆改行対応エリアは、ビット・マツプの展開は終了して
いるが、データ圧縮は未了で逆改行で変更可能なエリア
であり、逆方向の用紙送りに対応できる大きさ、すなわ
ち逆改行可能ドツト数XFAX幅の大きさを有する。逆
改行をどの程度認めるかは仕様により、逆改行可能ドツ
ト数を24ドツト(1印字行行方向ドツト数)とすれば
上述した最新行作業エリアと同じ大きさであり、逆改行
を認めなければこのエリアはOになる。The reverse line feed compatible area is an area where the bit map has been expanded but the data compression has not yet been completed and can be changed by reverse line feed, and is large enough to accommodate paper feeding in the reverse direction, that is, the number of dots that can be reverse line feed. It has the size of the XFAX width. The extent to which reverse line feeds are allowed depends on the specifications.If the number of dots that can be reversed line feeds is 24 dots (the number of dots in the direction of one printed line), the size is the same as the latest line work area mentioned above, and if reverse line feeds are not allowed, then This area becomes O.
DCR共有メモリは、DCRからのメモリアクセスが可
能なエリアであり、最低で最新行作業エリアの大きさを
有する。The DCR shared memory is an area that can be accessed from the DCR, and has at least the size of the latest row work area.
このワークメモリは、これ等の三つのエリア全体を一つ
のリングとして使用し、このときそれぞれのエリアの境
界は各エリアの先頭を示すポインタによって判断する。This work memory uses these three areas as one ring, and at this time, the boundaries of each area are determined by pointers indicating the beginning of each area.
次に、上述したビット・マツプ展開処理の一例について
第10図を参照して説明する。Next, an example of the above-mentioned bit map development process will be explained with reference to FIG.
まず、ホスト側からのデータを入力し、そのデータがイ
メージ開始か否かを判別する。First, data from the host side is input, and it is determined whether the data indicates the start of an image.
そして、イメージ開始であれば、イメージデータを入力
し、そのイメージデータ(上述したように1バイトのデ
ータ)の黒点(°1°のビット)を検出し、この黒点の
基点からの変位量を決定して、決定したビット・マツプ
上の位置に黒点を配置する。Then, if it is an image start, input the image data, detect the black point (°1° bit) of the image data (1 byte data as described above), and determine the amount of displacement of this black point from the base point. and place a black point at the determined position on the bit map.
すなわち、ワークメモリを予めクリアしておくことによ
ってワークメモリのすべてのビットに°0°が格納され
ているので、8ビツトのイメージデータの内の1°にな
っているビットを見つけて、そのビットが対応するワー
クメモリのアドレスのビットがワークメモリの前述した
第8図の例で第Oドツトラインエリアの第Oアドレスの
第7ビツト(基点)に対していくら変位した位置かを決
定して、その決定した位置に°1° (黒)を配置する
。In other words, by clearing the work memory in advance, all bits in the work memory store 0°, so find the bit in the 8-bit image data that is 1°, and set that bit. Determine how much the bit of the address of the work memory corresponding to is displaced from the 7th bit (base point) of the O-th address of the O-th dot line area in the example of FIG. Place °1° (black) at the determined position.
このとき、基点に対する変位量の決定は前述した式に従
い、イメージデータが第Xバイトであるときにその第y
ビットが°1° (黒点)であれば、ビット・マツプ上
(ワークメモリ上)の該当ドツトラインエリアの第Xバ
イト目の第Yビットに°1°を配置する。At this time, the amount of displacement with respect to the base point is determined according to the above-mentioned formula, and when the image data is the X-th byte, the y-th
If the bit is °1° (black dot), °1° is placed in the Y-th bit of the X-th byte of the corresponding dot line area on the bit map (on the work memory).
このような処理を1バイトのイメージデータの各ビット
について繰返し実行して、1バイトのイメージデータの
ビット・マツプ上への黒点の配置(展開)が終了したと
きには再度ホスト側からの次の1バイトのイメージデー
タを入力するための処理に戻る。This process is repeated for each bit of 1 byte of image data, and when the black point has been placed (developed) on the bit map of 1 byte of image data, the next 1 byte from the host side is executed again. Return to the process for inputting the image data.
これに対して、ホスト側からのデータがイメージ開始で
なければ、イメージ終了か否かを判別して、イメージ終
了でなければ、改行系コマンドか否かを判別する。On the other hand, if the data from the host side is not the start of an image, it is determined whether the data is the end of the image, and if the data is not the end of the image, it is determined whether it is a line feed command.
そして、改行系コマンドであれば、次行のイメージデー
タをビット・マツプに展開するために、ワークエリアの
基点を変更し、新たなワークエリアになる部分をクリア
した後、黒点の配置を終了したエリアのビット・マツプ
を圧縮コード(ここではMHコード)に変換する。Then, if it is a line feed command, in order to develop the next line of image data into a bit map, change the base point of the work area, clear the area that will become the new work area, and then finish placing the black dots. The bit map of the area is converted into a compressed code (in this case, MH code).
例えば第9図の例で現在同図に示す状態でワークエリア
を使用しているとすると、最新行作業エリアにビット・
マツプを展開し、その後改行系コマンドが入力されたと
きには、DCR共有エリアを次行のワークエリア(最新
行作業エリア)としてその先頭アドレスに基点を変更し
てクリアした後、黒点の配置を完了したワークエリア(
旧最新行作業エリア)のビット・マツプを圧縮コードに
変換する。For example, in the example shown in Figure 9, if the work area is currently being used in the state shown in the figure, there will be bits in the latest line work area.
After expanding the map, when a new line command is input, the DCR shared area is set as the next line's work area (latest line work area) and the base point is changed to the first address and cleared, and the placement of the black dots is completed. Work area (
Converts the bitmap of the old latest line work area) into a compressed code.
また、イメージ開始でなくイメージ終了になれば、すべ
てのワークエリアすなわち最新行作業エリア、逆改行対
応エリア及びDCR共有エリアのビット・マツプを圧縮
コードに変換する。Further, if the image ends instead of the image start, the bit maps of all work areas, that is, the latest line work area, the reverse line feed compatible area, and the DCR common area are converted into compressed codes.
このようにして得られた送信データとしての圧縮コード
をFAX画情報格納エリアに格納し、送信指示が与えら
れたときに指定された相手先に送信する。The compressed code as transmission data thus obtained is stored in the FAX image information storage area, and is transmitted to the specified destination when a transmission instruction is given.
次に、ファクシミリ装置(自己と同等の通信制御装置を
含む)からの文書受信時の処理について説明する。Next, a description will be given of processing when a document is received from a facsimile device (including a communication control device equivalent to the facsimile device itself).
まず、相手先ファクシミリ装置から受信した圧縮コード
(MHコード)をライン単位でチェックしてFAX画情
報蓄積エリアに蓄積するデコードラインチェック処理に
ついて第11図を参照して説明する。First, the decode line check process of checking the compressed code (MH code) received from the destination facsimile machine line by line and storing it in the FAX image information storage area will be described with reference to FIG.
このラインチェック処理において、まずEOL(エンド
・オブ・ライン)コード(以下単に「EOLJと称す)
を検出する処理をした後、1ラインのビット数をカウン
トするためのラインビットカウンタLINBCTを「0
」にリセット(LINBCT←0)して、ホワイト(白
)MHコードを検出するWMH検出処理に移行する。In this line check process, first the EOL (end of line) code (hereinafter simply referred to as "EOLJ") is
After performing the process of detecting
” (LINBCT←0) and shifts to WMH detection processing for detecting a white MH code.
このWMH検出処理でホワイトM I−Iコードを検出
したときには、そのMHコードに対応するランレングス
のビット数をラインビットカウントLINBCTに加算
(LINBCT+RUN+LINBCT)した後、ライ
ンビットカウンタLINBCTのカウント値が1ライン
の正しいビット数(ここではr1728」ビットとする
)を越えている(L I NBCT>1728)か否か
をチェックする。When a white M I-I code is detected in this WMH detection process, the number of bits of the run length corresponding to that MH code is added to the line bit count LINBCT (LINBCT+RUN+LINBCT), and then the count value of the line bit counter LINBCT is set to 1 line. It is checked whether the correct number of bits (in this case, r1728 bits) is exceeded (L I NBCT>1728).
このとき、ラインビットカウンタLINBCTのカウン
ト値がr1728Jを越えていなければ、ターミネート
コードTCか否かを判別して、ターミネートコードTC
でなければすなわちメイクアップコードMCであれば再
度WMH検出処理に戻り、ターミネートコードTCであ
ればブラック(黒)MHコードを検出するBMW検出処
理に移行する。At this time, if the count value of the line bit counter LINBCT does not exceed r1728J, it is determined whether or not the termination code is TC, and the termination code is
Otherwise, if the makeup code is MC, the process returns to the WMH detection process, and if it is the termination code TC, the process moves to the BMW detection process to detect a black MH code.
このBMH検出処理でブラックMHコードを検出したと
きには、そのMHコードに対応するランレングスのビッ
ト数をラインビットカウントLINBCTに加算(L
INBCT4−RUN+L INBCT)t、た後、ラ
インビットカウンタLINBCTのカウント値が1ライ
ンの正しいビット数r1728J を越えている(L
I NBCT>1728)か否かを判別する。When a black MH code is detected in this BMH detection process, the number of run length bits corresponding to that MH code is added to the line bit count LINBCT (L
INBCT4-RUN+L INBCT) After t, the count value of the line bit counter LINBCT exceeds the correct number of bits for one line r1728J (L
INBCT>1728).
このとき、ラインビットカウンタLINBCTのカウン
ト値がr1728」を越えていなければ5ターミネート
コードTCか否かを判別して、ターミネートコードTC
でなければすなわちメイクアップコードMCであれば再
度BMW検出処理に戻り、ターミネートコードTCであ
ればWMH検出処理に戻る。At this time, if the count value of the line bit counter LINBCT does not exceed "r1728", it is determined whether or not the termination code TC is set.
Otherwise, if the makeup code is MC, the process returns to the BMW detection process, and if the termination code is TC, the process returns to the WMH detection process.
これに対して、WMH検出処理又はBMW検出処理でM
Hコードでないときには、EOLか否かを判別し、EO
Lでなければそのラインはエラーラインであるのでエラ
ーラインを示すEOL (ここでは「EOL(1゜)」
で示す)をFAX画情報蓄積エリアに格納する。同様に
、WMH検出処理又はBMH検出処理でMHコードを検
出したときにラインビットカウンタL INBCTのカ
ラン1へ値がr1728Jを越えた(L I NBCT
>1728)ときにもそのラインはエラーラインである
のでEOL (1)をFAX画情報蓄積エリアに格納す
る。On the other hand, in WMH detection processing or BMW detection processing, M
If it is not an H code, it is determined whether it is EOL or not, and the EO
If it is not L, the line is an error line, so EOL (here, "EOL (1°)") indicates the error line.
) is stored in the FAX image information storage area. Similarly, when an MH code is detected in WMH detection processing or BMH detection processing, the value in line bit counter L INBCT column 1 exceeds r1728J (L I NBCT
>1728), the line is an error line, so EOL (1) is stored in the FAX image information storage area.
そして、WMH検出処理又はB M W検出処理でEO
Lを検出したときには、ラインビットカウンタLINB
CTのカラントイ直がr1728Jか(LINBCT=
1728)か否かを判別する。Then, EO is detected in WMH detection processing or BMW detection processing.
When L is detected, the line bit counter LINB
CT's Karantoy direct is r1728J (LINBCT=
1728).
このとき、ラインビットカウンタLINBCTのカウン
ト値がr1728」であれば、そのラインは正しいライ
ンであるので、頁終りを示すRTC(リターン・トウ・
コントロール)を検出するRTCカウンタRTCCNT
を「O」にリセツ1へした後、受信したMHコード及び
正しいラインを示すEOL (ここではrEOL (0
)Jで示す)をFAX画情報蓄積エリアに格納する。At this time, if the count value of the line bit counter LINBCT is "r1728", that line is the correct line, and the RTC (Return To) indicates the end of the page.
RTC counter RTCCNT that detects
After resetting the MH code to "O" to 1, the received MH code and the EOL (rEOL (0
) is stored in the FAX image information storage area.
これに対して、ラインビットカウンタL I N BC
Tのカウント値がr1728Jでなければ、そのカウン
ト値が「0」か(LINBCT=O)か否かを判別する
。On the other hand, the line bit counter L I N BC
If the count value of T is not r1728J, it is determined whether the count value is "0" (LINBCT=O).
このとき、ラインビットカウンタLINBCTのカウン
ト値が「0」であれば、そのラインはエラーラインであ
るので、EOL (1)をFAX画情報蓄積エリアに格
納する。At this time, if the count value of the line bit counter LINBCT is "0", that line is an error line, so EOL (1) is stored in the FAX image information storage area.
これに対してラインビットカウンタLINBCTのカウ
ント値が「O」でなければ、RTCカウンタRTCCN
Tをインクリメント(+1)した後、そのカウント値が
「2」か否かを判別して、カウント値が「2」でなけれ
ばEOL (0)をFAX画情報i?fJtエリアにセ
ットし、またそのカウント値が「2」であれば頁終りで
あるので2個のEOL (0)(:れを内部的にrRT
cJとする)をFAX画情報蓄積エリアにセットしてこ
の処理を終了する。On the other hand, if the count value of the line bit counter LINBCT is not "O", the RTC counter RTCCN
After incrementing T (+1), it is determined whether the count value is "2" or not. If the count value is not "2", EOL (0) is sent to the FAX image information i? fJt area, and if the count value is "2", it is the end of the page, so 2 EOL (0) (: is internally rRT
cJ) is set in the FAX image information storage area, and this process ends.
このような処理を行なうことによって、FAX画情報蓄
積エリアには例えば第12図に示すように、先頭にEO
L (0000000010000000)が格納され
、その次に受信した1ラインのMHコードが格納されて
このラインの終りには正シイラインヲ示すEOL (0
000000010000000)が格納され、更に次
の1ラインのMHコードが格納されてこのラインの終り
には正しいラインを示すEOLが格納され、次のライン
はエラーラインであったのでエラーラインを示す工5−
EOL(0000000011,OOO000)が格納
され、以後同様にしてMHココ−〜。By performing such processing, the FAX image information storage area has EO at the beginning, for example, as shown in FIG.
L (0000000010000000) is stored, then the received MH code of one line is stored, and at the end of this line, EOL (0
000000010000000) is stored, and then the MH code for the next line is stored, and at the end of this line, EOL indicating the correct line is stored.Since the next line is an error line, the step 5-5 indicating the error line is stored.
EOL (0000000011, OOO000) is stored, and MH Coco~ is stored in the same manner.
EOL又はエラーEOLが格納され、1頁の終りにはR
TC(2個のEOL)が格納される。EOL or error EOL is stored, and R at the end of one page.
TC (2 EOLs) is stored.
なお、MHコードとEOLとの間にはバイトシャステフ
ァイ用のFill(フィル)B、JFが適宜付加される
。また、EOLはEOLを容易に見つけられるようにバ
イ1−パウンダリイに合わせて付加するようにしている
。更に、上述の説明から明らかではあるが正しいライン
のEOLとエラーE OLとの区別は第2バイト目の第
7ビツトD6をラインステータスビットとして正しいラ
インのEOLは「0」にし、エラーラインのE OLは
「1」にする。Incidentally, Fill B and JF for bite-sized stabilization are added as appropriate between the MH code and the EOL. Further, the EOL is added in accordance with the By 1-Poundary so that the EOL can be easily found. Furthermore, although it is clear from the above explanation, to distinguish between the EOL of a correct line and the error EOL, the seventh bit D6 of the second byte is set as a line status bit, and the EOL of a correct line is set to "0", and the EOL of an error line is set to "0". Set OL to "1".
このように、受信した圧縮コードに基づいて圧縮コード
のまま長さくランレングス)をチェックして正しいライ
ンか否かを判定し、正しいラインであれば受信した圧縮
コードをメモリに蓄積することにより、圧縮コードを一
旦伸長してランレングスをチェックして正しいラインか
否かを判定する場合に比べて判定処理を高速で行なうこ
とができるようになる。In this way, based on the received compressed code, the compressed code (run length) is checked to determine whether the line is correct, and if the line is correct, the received compressed code is stored in the memory. The determination process can be performed at a higher speed than in the case where the compressed code is once decompressed and the run length is checked to determine whether or not the line is correct.
このようにしてFAX画情報蓄積エリアに蓄積された後
受信印刷指示が与えられることによって、蓄積されたM
Hコードをデコードしてプリンタ・ライン・ビット・プ
レーンPLBP (これについては後述する)を作成し
、このプリンタ・ライン・ビット・プレーンPLBPの
データをプリンタに出力する。After being stored in the FAX image information storage area in this way, the received printing instruction is given, and the stored M
The H code is decoded to create a printer line bit plane PLBP (described later), and the data of this printer line bit plane PLBP is output to the printer.
そこで、まずFAX画情報蓄積エリアに蓄積された圧縮
コードをバイトあるいはワード単位で取出してデコード
し、プリンタの1ライン分のイメージデータを作成する
処理について説明する。First, we will explain the process of extracting and decoding the compressed code stored in the FAX image information storage area in units of bytes or words to create image data for one line of the printer.
このイメージデータの作成処理では、圧縮コードをデコ
ードして1行(1ライン)分のイメージデータを作成し
て、メモリ (このメモリを上述した「プリンタ・ライ
ン・ビット・プレーンPLBP」と称する)に格納する
。In this image data creation process, the compressed code is decoded to create one line of image data and stored in a memory (this memory is referred to as the above-mentioned "printer line bit plane PLBP"). Store.
この場合、この実施例におけるプリンタは1行(1ライ
ン)が24X1440ドツト構成であるのに対して、フ
ァクシミリ装置においては1行の長さが1728ドツト
であるため、第13図に示すようにプリンタ・ライン・
ビット・プレーンPLBPよりも実際にデコード処理で
得られるビット・プレーンの方が両端が各々144ドツ
ト分大きくなる。したがって、この144ドツト分はデ
コードしたデータをそのままプリンタ・ライン・ビット
・プレーンPLBPに展開して印字したときには欠ける
ことになるが、この点については具体的説明は省略する
がビット変換処理を行なうことによって大幅な欠落を回
避できる。In this case, the length of one line of the printer in this embodiment is 24 x 1440 dots, whereas in the facsimile machine the length of one line is 1728 dots, so the printer as shown in FIG. ·line·
The bit plane actually obtained by decoding is larger at both ends by 144 dots than the bit plane PLBP. Therefore, these 144 dots will be missing when the decoded data is expanded and printed as is on the printer line bit plane PLBP, but a detailed explanation of this point will be omitted, but bit conversion processing is performed. This can avoid major omissions.
そして、ここでは、プリンタ・ライン・ビット・プレー
ンPLBPのエリアとしてはこの実施例のプリンタ以外
のプリンタを使用することも考慮して、ファクシミリ装
置の幅に合わせて、1つのエリアが1728x24 (
5148バイト×3)である(このエリアを「プレーン
」と称する)3個のプレーンからなるプリンタ・ライン
・ビット・プレーンPLBPを2個使用する。なお、プ
リンタ・ライン・ビット・プレーンPLBPを2個持つ
のはデコード処理とプリンタ出力処理とを並行動作でき
るようにするためである。Here, considering that a printer other than the printer of this embodiment is used as the printer line bit plane PLBP area, one area is 1728 x 24 (1728 x 24) (
5148 bytes x 3) (this area is referred to as a "plane"). Two printer line bit planes PLBP each consisting of three planes are used. The reason for having two printer line bit planes PLBP is to enable decoding processing and printer output processing to operate in parallel.
この場合、実際のプリンタ・ライン・ビット・プレーン
PLBPのためのメモリ空間は例えば第14図に示すよ
うなメモリ空間としている。これは、送信モードにおけ
るビット・マツプ展開で説明したように、プリンタへの
イメージデータの転送フォーマットとファクシミリ装置
との間の転送フォーマットが異なるので、送信時とは逆
にファクシミリ装置から受領した1ドツトラインのデー
タをプリンタに転送する際のフォーマット合わせて格納
するためである。In this case, the memory space for the actual printer line bit plane PLBP is, for example, the memory space shown in FIG. As explained in bit map expansion in transmission mode, the transfer format of the image data to the printer and the transfer format between the facsimile machine are different, so the one-dot line received from the facsimile machine is This is to store the data according to the format used when transferring it to the printer.
そこで、デコード及びプリンタ・ライン・ビット・プレ
ーンPLBPの作成処理について第15図を参照して説
明する。Therefore, the decoding and printer line bit plane PLBP creation processing will be explained with reference to FIG. 15.
この作成処理においては、受信頁管理テーブルから頁情
報を得た後、プリンタ・ライン・ビット・プレーンカウ
ンタP L N CN TをrOJにリセットシ、ドツ
トライン数(0〜24−1)を示すためのライン・ホリ
ゾンタル・ポインタLINH2Pを「o」にリセットす
る。In this creation process, after obtaining page information from the received page management table, the printer line bit plane counter P L N C N T is reset to rOJ, and the line for indicating the number of dot lines (0 to 24-1) is reset. -Reset horizontal pointer LINH2P to "o".
その後、更に1行(24ドツトライン)が全て白(0)
であることを示す、つまり当該ラインには黒(1)が存
在することを示すためのプリンタ・ライン・ビット・プ
レーン・ブラック・イグジストフラグPLNBLKを「
0」 (すべて白の状りにセットし、プリンタ・ライン
・ピッ1−・プレーンPLBPをクリアする。After that, one more line (24 dot lines) is all white (0)
In other words, the printer line bit plane black exact flag PLNBLK to indicate that black (1) exists in the line concerned is set to
0'' (Set everything to white and clear printer line pin 1-plane PLBP.
そして、1ドツトラインのビット位置を示すためのライ
ン・ビット・ポインタL INBTPを「0」にリセッ
トした後、白(ホワイト)圧縮コードをデコードするホ
ワイトデコード処理に移行する。Then, after resetting the line bit pointer LINBTP for indicating the bit position of the one-dot line to "0", the process shifts to white decoding processing for decoding the white compressed code.
このホワイトデコード処理でEOL及びエラーEOLの
いずれもを検出しなければ、ライン・ビット・ポインタ
L INBTPに圧縮コードのランレングス(RL)分
だけ加算し、EOLをカウントするEOLカウンタを「
0」にリセットした後、黒(ブラック)圧縮コードをデ
コードするブラックデコード処理に移行する。If neither an EOL nor an error EOL is detected in this white decoding process, the run length (RL) of the compressed code is added to the line bit pointer L INBTP, and the EOL counter that counts the EOL is set to "
After resetting to "0", the process shifts to black decoding processing for decoding a black compressed code.
このブラックデコード処理でEOL及びエラーEOLの
いずれも検出しなければ、当該ラインには黒があるので
プリンタ・ライン・ビット・プレーン・ブラック・イグ
ジットフラグPLNBLKを「1」にセットする。If neither EOL nor error EOL is detected in this black decoding process, the printer line bit plane black exit flag PLNBLK is set to "1" because there is black on the line.
その後、ライン・ビット・ポインタLINBTPがrl
728J以上か否かを判別し、ライン・ビット・ポイ
ンタLINBTPがr1728J未満であれば、所定の
位置に「1」 (黒)を配置するビットセット処理をし
た後、ライン・ビット・ポインタLINBTPに圧縮コ
ードのランレングス(RL)分だけ加算して、ランレン
グスから−1(RL−1)してその値が「o」か否かを
判別し、(RL−1)=0でなければ再度ライン・ビッ
ト・ポインタLINBTPがr1728J以上か否かの
判別処理に戻ってビットセットを繰返す。Then the line bit pointer LINBTP is set to rl
728J or more, and if the line bit pointer LINBTP is less than r1728J, bit set processing is performed to place "1" (black) at a predetermined position, and then the line bit pointer LINBTP is compressed. Add the run length (RL) of the code, subtract 1 (RL-1) from the run length to determine whether the value is "o", and if (RL-1) = 0, add the line again. - Return to the process of determining whether the bit pointer LINBTP is greater than or equal to r1728J and repeat the bit setting.
そして、ライン・ビット・ポインタLINBTPがrl
728J以上になったとき又は(RL−1)=Oにな
ったときには、1ドツトラインの最終ビットに達してい
るのでそのままホワイトデコード処理に戻る。and the line bit pointer LINBTP is rl
When the number becomes 728J or more or when (RL-1)=O, the final bit of the one-dot line has been reached and the process returns to the white decoding process.
このように、ここでは圧縮コードをデコードしてランレ
ングスを求め、白MHコードについては単にカウンタを
進め、黒MHコードについてのみそのランレングスで示
されるビット分だけプリンタ・ライン・ビット・プレー
ンPLBPの所定のビットに「1」 (黒)を配置する
処理を行なう。In this way, the compressed code is decoded to find the run length, and for the white MH code, the counter is simply advanced, and only for the black MH code, the printer line bit plane PLBP is decoded by the bits indicated by the run length. A process of placing "1" (black) in a predetermined bit is performed.
それによって、白についてはビット配置を行なわなくて
すみ、前述した送信処理の場合と同様に処理速度の高速
化を図ることができる。As a result, there is no need to perform bit allocation for white, and the processing speed can be increased as in the case of the transmission processing described above.
そして、ホワイトデコード処理又はブラックデコード処
理においてEOLを検出したときには、EOLカウンタ
をインクリメント(+1)した後、またホワイトデコー
ド処理又はブランクデコード処理においてエラーEOL
を検出したときにはそのまま、EOLカウンタのカウン
ト値が「2」すなわちRTC(頁の終り)か否かを判別
する。When an EOL is detected in white decoding processing or black decoding processing, the EOL counter is incremented (+1), and then an error EOL is detected in white decoding processing or blank decoding processing.
When it is detected, it is immediately determined whether the count value of the EOL counter is "2", that is, the RTC (end of page).
このとき、EOLカウンタのカウント値が「2」でなけ
れば、つまり頁の終りでなければ、印字ピッチが3.8
5ライン/mmか7.7ライン/mmか(3,8577
,7)かを判別して、印字ピッチが3.85ライン/m
mのときにはライン・ホリゾンタル・ポインタLINH
2Pをr+2J L、印字ピッチが7.7ライン/mm
のときにはライン・ホリゾンタル・ポインタLINH2
Pを「+1」する。なお、3.85ライン/mraのと
きにライン・ホリゾンタル・ポインタLINH2Pを「
+2」するのは後述するようにビットセット処理で7.
7ライン/+nmに合わせるために2ドツトライン分同
じピットセットを行なうためである。At this time, if the count value of the EOL counter is not "2", that is, if it is not the end of the page, the print pitch is 3.8.
5 lines/mm or 7.7 lines/mm (3,8577
,7), and the printing pitch is 3.85 lines/m.
When m, line horizontal pointer LINH
2P is r + 2J L, printing pitch is 7.7 lines/mm
When , the line horizontal pointer LINH2
Add "+1" to P. In addition, when the line horizontal pointer LINH2P is 3.85 lines/mra,
+2" is done by bit set processing as described below.
This is to perform the same pit set for 2 dot lines in order to match 7 lines/+nm.
そして、ライン・ホリゾンタル・ポインタLINH2P
が「24ノか否かつまり24ドツトライン(1行)分の
デコードが終了したか否かを判別して、24ドツトライ
ン分のデコードが終了していなければ再度ライン・ビッ
ト・ポインタLINBTPをrOJにリセットしてデコ
ードを繰返し、24ドツトライン分のデコードが終了し
ていれば、プリンタ・ライン・ビット・プレーン・ブラ
ック・イグジット・フラグPLNBLKが「1」か否か
を判別する。And line horizontal pointer LINH2P
is 24 or not, that is, whether decoding for 24 dot lines (one line) has been completed or not. If decoding for 24 dot lines has not been completed, the line bit pointer LINBTP is reset to rOJ again. Then, the decoding is repeated, and if the decoding for 24 dot lines is completed, it is determined whether the printer line bit plane black exit flag PLNBLK is "1" or not.
このとき、プリンタ・ライン・ビット・プレーン・ブラ
ック・イグジット・フラグP L N B L Kが「
1」であれば、プリンタ・ライン・ピッl−・プレーン
PLBF’に展開したイメージデータをプリンタに出力
し、「1」なければつまり「0」であれば、その行はす
べて白であって単にラインフィード(改行)を行なえば
足りるので、プリンタヘッドコントロールコマンドrL
F」をプリンタに出力する。At this time, the printer line bit plane black exit flag P L N B L K is “
If it is "1", the image data expanded to printer line pick-up plane PLBF' is output to the printer, and if it is not "1", that is, "0", then the line is all white and is simply It is sufficient to perform a line feed (line feed), so print head control command rL
F" is output to the printer.
その後、プリンタ・ライン・ピッI−・プレーン・カウ
ンタPLNCNTをインクリメント(+1)して、プリ
ンタ・ライン・ビット・プレーン・カウンタPLNCN
Tのカウント値が最大値(MAX)になったか否か、す
なわち1頁の最大印字行数になったか否かを判別する。After that, the printer line bit plane counter PLNCNT is incremented (+1), and the printer line bit plane counter PLNCNT is incremented (+1).
It is determined whether the count value of T has reached the maximum value (MAX), that is, whether the maximum number of lines printed on one page has been reached.
このとき、プリンタ・ライン・ビット・プレーン・カウ
ンタPLNCNTのカウント値が最大値でなく1頁の最
大行数になっていなければ、当該用紙に未だ印字できる
ので、プリンタ・ライン・ビット・プレーン・ブラック
・イグジット・フラグPLNBLKが「1」か否かを判
別する。At this time, if the count value of the printer line bit plane counter PLNCNT is not the maximum value and does not reach the maximum number of lines on one page, it is possible to still print on the paper, so the printer line bit plane black - Determine whether the exit flag PLNBLK is "1" or not.
そして、プリンタ・ライン・ビット・プレーン・ブラッ
ク・イグジット・フラグPLNBLKが「1」のときに
はプリンタ・ライン・ビット・プレーンPLBPに「1
」が配置されているので、ライン・ホリゾンタル・ポイ
ンタLINH2Pを「0」にリセットし、更にプリンタ
・ライン・ビット・プレーン・ブラック・イグジット・
フラグPLNBLKを「0」にリセットしてプリンタ・
ライン・ビット・プレーンPLBPをクリアする処理に
戻る。Then, when the printer line bit plane black exit flag PLNBLK is "1", the printer line bit plane PLBP is set to "1".
” is placed, so reset the line horizontal pointer LINH2P to “0” and then set the printer line bit plane black exit.
Reset the flag PLNBLK to "0" and restart the printer.
Return to the process of clearing the line bit plane PLBP.
また、プリンタ・ライン・ビット・プレーン・ブラック
・イグジット・フラグPLNBLKが「1」でなければ
、プリンタ・ライン・ビット・プレーンPLBPに「1
」が配置されていないので、そのままライン・ビット・
ポインタLINBTPを「0」にリセットする処理に戻
る。Also, if the printer line bit plane black exit flag PLNBLK is not "1", the printer line bit plane PLBP is set to "1".
" is not placed, so the line/bit/
Returning to the process of resetting the pointer LINBTP to "0".
このようにデコードした行についてプリンタ・ライン・
ビット・プレーンPLBPに「1」を配置したか否かを
保持しておくことによって、印字動作の高速化を図れる
と共に、ビット展開の処理の高速化を図ることができる
。For the lines decoded in this way, the printer line
By retaining whether or not "1" is placed in the bit plane PLBP, it is possible to speed up the printing operation and speed up the bit expansion process.
なお、EOLカウンタEOLCNTのカウント値が「2
」になったとき、すなりちRTCを検出したときにはプ
リンタ・ライン・ビット・プレーン・ブラック・イグジ
ット・フラグP L N B L Kが「1」か否かを
判別して、「1」であれば上述したように黒(1)があ
るのでイメージデータ(最終のイメージデータである)
をプリンタに出力した後、また「1」でなければ全て白
であるのでそのままヘッドコントロールコマンドrFF
J(改頁)をプリンタに出力する。また、プリンタ・ラ
イン・ビット・プレーンカウンタPLNCNTのカウン
ト値が最大値rMAXJになったときにも当該用紙には
最早印字できないので、ヘッドコントロールコマンドr
FFJ (改頁)をプリンタに出力する。Note that the count value of the EOL counter EOLCNT is “2”.
”, when the Suranichi RTC is detected, it is determined whether the printer line bit plane black exit flag P L N B L K is “1” or not. As mentioned above, since there is black (1), the image data (this is the final image data)
After outputting to the printer, if it is not "1", everything is white, so use the head control command rFF as it is.
Output J (page break) to the printer. Also, when the count value of the printer line bit plane counter PLNCNT reaches the maximum value rMAXJ, it is no longer possible to print on the paper, so the head control command r
Output FFJ (page break) to the printer.
次に、この作成処理におけるビットセット処理について
第16図を参照して説明する。Next, bit set processing in this creation process will be explained with reference to FIG. 16.
このピットセット処理においては、まずライン・ビット
・ポインタLINBTP及びライン・ホリゾンタル・ポ
インタLINHzPで示すビットのセット指示を受ける
。In this pit setting process, first, an instruction to set bits indicated by a line bit pointer LINBTP and a line horizontal pointer LINHzP is received.
そして、ライン・ホリゾンタル・ポインタLINH2P
のビットD3 、D4 (b3− b4)で示されるプ
リンタ・ライン・ビット・プレーンPLBPを構成する
3個のバッファの内のいずれかのバッファ(第14図参
照)を選択し、ライン・ビット・ポインタLINBTP
と選択したバッファから実アドレスを得る。And line horizontal pointer LINH2P
Select one of the three buffers (see Figure 14) constituting the printer line bit plane PLBP indicated by bits D3 and D4 (b3-b4) of the line bit pointer. LINBTP
and get the real address from the selected buffer.
その後、ライン・ホリゾンタル・ポインタLINH2P
のピッI−Do、D、、D、からビット位置を得て、こ
のビット位置に黒(1)をセットする。なお、このとき
、印字ピッチが3.85ライン/+imのプリンタでは
、ビットD、、Dよ、D2+1のビットについても黒を
配置して同じドツトラインのデータを2ドツトライン分
生成する。Then line horizontal pointer LINH2P
Obtain the bit position from the pins I-Do, D, , D, and set black (1) to this bit position. At this time, in a printer with a printing pitch of 3.85 lines/+im, black is also arranged for bits D, D, D2+1, and data for the same dot line is generated for two dot lines.
次に、プリンタへの出力処理について第17図を参照し
て説明する。このプリンタ出力処理タスクはデコード処
理タスクからのメツセージ(例えば「メツセージプリン
タコマンドMSGPRCJとする)を受けて起動され、
処理の終了時にデコード処理タスクに対してメツセージ
(例えば「メツセージプリンタレスポンスMSGPRR
J とする)を返送するものとする。Next, output processing to the printer will be explained with reference to FIG. 17. This printer output processing task is activated in response to a message from the decoding processing task (for example, "message printer command MSGPRCJ"),
At the end of processing, a message is sent to the decoding task (for example, "Message Printer Response MSGPRR").
J) shall be returned.
このプリンタ出力処理では、まずプリンタがノットビジ
ィ状態(レディ状態)か否かを判別して、プリンタがノ
ットビジィ状態でなく使用中であればブザーを鳴してメ
ツセージプリンタレスポンスMSGPRRとして「エラ
ー」を返送する。In this printer output process, it is first determined whether the printer is in a not-busy state (ready state) or not, and if the printer is not in a not-busy state and is in use, it sounds a buzzer and returns an "error" as a message printer response MSGPRR. .
これに対して、プリンタがノットビジィ状態であれば、
プリンタに対して初期化コマンドrESC,RJを送出
して、プリンタの初期設定(6LPI、ホームポジショ
ン、50CPS、黒とする)をさせる。On the other hand, if the printer is not busy,
Initialization commands rESC and RJ are sent to the printer to initialize the printer (6LPI, home position, 50CPS, black).
そして、プリンタに出力するデータがイメージデータか
否かを判別し、イメージデータであれば、イメージデー
タコマンドrESC,%、1.nl。Then, it is determined whether the data to be output to the printer is image data or not, and if it is image data, image data commands rESC,%,1. nl.
n2J (nl、n2でイメージデータの長さを示す
)を出力して、イメージデータを出力してイメージデー
タを印字させ、キャリッジリターンコマンドrCRJ及
びラインフィードコマンドrL FJを出力して印字ヘ
ッドを次行先頭位置に位置させた後、メツセージプリン
タレスポンスMSGPRRとして「レディ」を返送し、
メツセージプリンタコマンドMSGPRCを受けたとき
に再度イメージデータか否かの判別処理に戻る。Output n2J (nl, n2 indicate the length of the image data), output the image data, print the image data, output the carriage return command rCRJ and line feed command rL FJ, and move the print head to the next line. After positioning it at the top position, it returns "Ready" as the message printer response MSGPRR,
When the message printer command MSGPRC is received, the process returns to the process of determining whether or not it is image data.
また、プリンタに出力するデータがイメージデータでな
ければ、改行コマンドrLFJか否かを判別し、改行コ
マンドrLFJであれば、改行コマンドrLFJを出力
した後、メツセージプリンタレスポンスMSGPRRと
して「レディ」を返送し、メツセージプリンタコマンド
MSGPRCを受けたときに再度イメージデータか否か
の判別処理に戻る。Also, if the data to be output to the printer is not image data, it is determined whether or not it is a line feed command rLFJ, and if it is a line feed command rLFJ, it outputs the line feed command rLFJ and then returns "Ready" as a message printer response MSGPRR. , when the message printer command MSGPRC is received, the process returns to the process of determining whether or not it is image data.
さらに、プリンタに出力するデータが改行コマンドrL
Fjでなければ、改頁コマンドrFFJか否かを判別し
、改頁コマンドrFFJであればキャンセルコマンドr
CANJ及び改頁コマンドrFFJ を出力した後、メ
ツセージプリンタレスポンスMSGPRRとして「レデ
ィ」を返送してこの処理を終了し、また改頁コマンドr
FFJでなければメツセージプリンタレスポンスMSG
PRRとして「エラー」を返送してこの処理を終了する
。Furthermore, the data to be output to the printer is the line feed command rL.
If not Fj, determine whether it is a page break command rFFJ, and if it is a page break command rFFJ, cancel command r
After outputting CANJ and the page break command rFFJ, "Ready" is returned as the message printer response MSGPRR to end this process, and the page break command rFFJ is output.
If it is not FFJ, message printer response MSG
"Error" is returned as the PRR and the process ends.
次に、受信データ(圧縮コード)に基づいて用紙サイズ
を判定する用紙サイズ判定処理について第18図乃至第
20図を参照して説明する。Next, paper size determination processing for determining the paper size based on received data (compressed code) will be described with reference to FIGS. 18 to 20.
まず、この実施例で使用している10“プリンタでは、
1ラインのドツト数が前述したように、1440程度で
あり、実際には
A4サイズ・・・1362ドツト
B4サイズ・・・1440ドツト
を使用している。つまり、第18図に示すように、B4
サイズでは1440ドツト全部を使用するが、A4サイ
ズでは両端の各々39ドツト(合計78ドツト)は使用
しない。First, in the 10" printer used in this example,
As mentioned above, the number of dots in one line is about 1440, and in reality, A4 size...1362 dots and B4 size...1440 dots are used. In other words, as shown in FIG.
For size, all 1440 dots are used, but for A4 size, 39 dots at each end (78 dots in total) are not used.
また、前述したようにファクシミリ装置では1ラインが
1728ドツトであるのに対してプリンタは1ラインが
1440ドツトであり、第19図に示すように送信時に
両端に各々144ドツトの白ランを付加するので、受信
FAX画情報の内の両端の144ドツトはプリンタの1
ラインをはみでることになる。Furthermore, as mentioned above, one line of a facsimile machine is 1728 dots, whereas one line of a printer is 1440 dots, and as shown in Figure 19, a white run of 144 dots is added to each end of the line at the time of transmission. Therefore, the 144 dots at both ends of the received fax image information are
You will end up crossing the line.
そこで、FAX画情報(圧縮コード)を受信してデコー
ドするときに、各ラインの最初の白ランの長さの内での
最小値と、各ラインの最後の黒ラインの位置の内での最
大値とを検出し、この検出した最小値がr144+39
=183J ドツト位置より小さいとき、又は最大値が
r144+39+1362=1545J ドツト位置よ
り大きいときにはB4サイズと判定し、そうでなければ
A4サイズと判定してFAX画情報と共に蓄積して。Therefore, when receiving and decoding FAX image information (compressed code), the minimum value of the length of the first white run of each line and the maximum value of the length of the last black line of each line are determined. The detected minimum value is r144+39
=183J If it is smaller than the dot position, or if the maximum value is larger than r144+39+1362=1545J dot position, it is determined to be B4 size, otherwise it is determined to be A4 size and stored together with the FAX image information.
印刷時にその判定したサイズを表示するようにしている
。The determined size is displayed when printing.
この処理について第20図を参照して説明すると、まず
左側の最小白ランポジションを格納するレジスタLPO
8及び右側の最大黒ランポジションを格納するレジスタ
RPO8を「O」にセット(クリア)した後、受信デー
タ (圧縮コード)からEOLをサーチする。To explain this process with reference to FIG. 20, first, the register LPO that stores the left minimum white run position
After setting (clearing) register RPO8, which stores the maximum black run position on the right side and the maximum black run position on the right side, to ``O'', the EOL is searched from the received data (compressed code).
その後、1ライン中のデコート結果のランポジションを
カウントするためのカウンタR,U N CNT及び1
ライン中のデコート結果の黒の右側の最大ポジションを
カウントするためのカウンタLRUNCNTを「0」に
セット(クリア)した後、受信データをデコードしてラ
ンレングスのビット数を求める。なお、これ等のカウン
タRtJNCNT及びカウンタL RU N CN T
のカウント値は1ライン中でのテンポラリイ値である。After that, counters R, U N CNT and 1 are used to count the run position of the decoding result in one line.
After setting (clearing) a counter LRUNCNT to "0" for counting the maximum position on the right side of black in the decoding result in the line, the received data is decoded to find the number of bits of the run length. In addition, these counters RtJNCNT and counters L RU N CN T
The count value is a temporary value within one line.
そして、ランレングスのビット数(以下rRUN」と称
する)がレジスタLPO5の値より小きい(RUN<L
P01)か否かを判別して、RUN<LP01であれi
f RU NをレジスタLPO8にセットする。その後
、RUNにカウンタRUNCNTの値を加算した値を再
度カウンタRUNCNTにセットする。If the number of bits of the run length (hereinafter referred to as rRUN) is smaller than the value of register LPO5 (RUN<L
P01), and if RUN<LP01, i
Set f RU N in register LPO8. Thereafter, the value obtained by adding the value of the counter RUNCNT to RUN is set in the counter RUNCNT again.
その後、次の受信データをデコードし、EOLか否かを
判別する。このとき、EOLでなければ、RUNにカウ
ンタRUNCNTの値を加算した値を再度カウンタRU
NCNTにセットした後、黒ランか否かを判別し、黒ラ
ンであればカウンタRUNCNTの値をカウンタLRU
NCNTにセットした後、また黒ランでなければそのま
ま、次の受信データのデコード処理に戻る。Thereafter, the next received data is decoded to determine whether it is EOL or not. At this time, if it is not EOL, the value obtained by adding the value of the counter RUNCNT to RUN is added to the counter RU again.
After setting NCNT, it is determined whether or not it is a black run, and if it is a black run, the value of the counter RUNCNT is set to the counter LRU.
After setting NCNT, if there is no black run again, the process returns to the decoding process of the next received data.
そして、受信データがEOLになったときには、カウン
タRUNCNTの値がrl 728Jか否かを判別し、
カウンタRUNCNT:1728であれば、カウンタL
RUNCNTの値がレジスタRposの値より大きい(
LRUNCNT>RPO8)か否かを判別し、LRUN
CNT>RPO3のときにはカウンタLRUNCNTの
値をレジスタRPO3にセットする。これに対して、カ
ウンタRUNCNT=1728でなければエラー処理を
する。Then, when the received data reaches EOL, it is determined whether the value of the counter RUNCNT is rl 728J,
Counter RUNCNT: If 1728, counter L
The value of RUNCNT is greater than the value of register Rpos (
LRUNCNT>RPO8).
When CNT>RPO3, the value of counter LRUNCNT is set in register RPO3. On the other hand, if the counter RUNCNT=1728, error processing is performed.
その後、1頁が終了したか否かを判別して、1頁が終了
していなければカウンタRUNCNTをrOJにクリア
する処理から再度上述した処理を行なう。このようにし
て、レジスタLPO3には1頁の各ラインの内で白ラン
ポジションの最小値を格納し、レジスタRPO8には1
頁の各ラインの内で黒ランポジションの最大値を格納す
る。Thereafter, it is determined whether or not one page has been completed, and if one page has not been completed, the above-described processes are performed again, starting from the process of clearing the counter RUNCNT to rOJ. In this way, register LPO3 stores the minimum value of the white run position in each line of one page, and register RPO8 stores the minimum value of white run position in each line of one page.
Stores the maximum black run position within each line of the page.
そして、1頁が終了したときには、レジスタLposの
値がr183J (144+39)より小さい(LP
01<183)、つまり左側の最小白ランポジションが
r183Jより小さいか否かを判別し、レジスタLPO
8の値がr183Jより小さいときにはB4サイズと判
定し、またレジスタLPO8の値が「183」より小さ
くなければレジスタRPO8の値がr1545J (
144+39+1362)より大きい(RPO8>15
45)、つまり右側の最大黒ランポジションが「154
5」より大きいか否かを判別し、レジスタRPO8の値
がrx545Jより大きいときにはB4サイズと判定し
、更にレジスタRPO3の値がrl 545Jより大き
くなければA4サイズと判定する。Then, when one page is completed, the value of register Lpos is smaller than r183J (144+39) (LP
01<183), that is, the minimum white run position on the left side is smaller than r183J, and register LPO
If the value of 8 is smaller than r183J, it is determined to be B4 size, and if the value of register LPO8 is smaller than 183, the value of register RPO8 is r1545J (
144+39+1362) greater than (RPO8>15
45), that is, the maximum black run position on the right side is "154".
If the value of register RPO8 is larger than rx545J, it is determined to be B4 size, and if the value of register RPO3 is not larger than rl545J, it is determined to be A4 size.
なお、この処理は相手先が自己と同等の通信制御装置で
あって180DPIで印字データを送ってくる場合の例
である。Note that this process is an example where the other party is a communication control device equivalent to the communication control device and sends print data at 180 DPI.
そして、このようにして得られた用紙サイズを印刷時に
表示することによってオペレータに適切な用紙のセット
を促し、あるいは複数サイズの用紙をセット可能な例え
ばオートシートフィーダを搭載したプリンタであれば自
動的に適切な用紙を選択することによって、送信側に応
じた適切な用紙を使用してプリンタで印刷することがで
き、データの欠落等を生じない。Then, by displaying the paper size obtained in this way at the time of printing, the operator is prompted to set the appropriate paper, or if the printer is equipped with an auto sheet feeder that can set paper of multiple sizes, it is automatically displayed. By selecting the appropriate paper for the sender, the printer can print using the paper appropriate for the sender, and data loss will not occur.
なお、上記実施例においては、ホスト側からプリンタに
対する印字データがイメージデータで転送される例につ
いて述べたので、通信制御装置自体には文字コードを文
字パターン(イメージデータ)に変換するキャラクタジ
ェネレータを備えていないが、ホスト側からの印字デー
タが文字コードで送られてくるときには通信制御装置内
にキャラクタジェネレータを備えればよく、またこの内
部キャラクタジェネレータの使用を選択する選択スイッ
チを設ければホスト側がイメージデータ及び文字コード
のいずれを使用するものであっても接続できる。In the above embodiment, an example was described in which print data is transferred from the host side to the printer as image data, so the communication control device itself is equipped with a character generator that converts character codes into character patterns (image data). However, when the print data from the host side is sent in character code, it is sufficient to have a character generator in the communication control device, and if a selection switch is provided to select the use of this internal character generator, the host side can Connections can be made regardless of whether image data or character codes are used.
また、上記実施例においては、この発明をプリンタに接
続してファクシミリ装置から受信する通信制御装置につ
いて述べたが、これに限らず圧縮コードを受信するすべ
ての通信端末装置に実施することができる。Furthermore, in the above embodiments, the present invention has been described with respect to a communication control device that is connected to a printer and receives data from a facsimile machine, but the present invention is not limited to this and can be implemented in any communication terminal device that receives compressed codes.
さらに、プリンタの機能も上記実施例で述べたものに限
られないことも勿論である。Furthermore, it goes without saying that the functions of the printer are not limited to those described in the above embodiments.
効果
以上説明したように、この発明によれば、適切な用紙を
使用することができる。Effects As explained above, according to the present invention, appropriate paper can be used.
第1図はこの発明を実施した通信制御装置の要部を機能
的に示すブロック図、
第2図は同じくその通信制御装置を備えた情報処理シス
テムの一例を示す構成図、
第3図は同じくその通信制御装置の具体的構成を示すブ
ロック図、
第4図は同じくホスト側から入力されるコマンドを解析
するコマンド解析処理を示すフロー図、
第5図及び第6図は同じくホスト側からのデータ転送の
説明に供する説明図、
第7図及び第8図は同じくワークメモリへのビット・マ
ツプ展開の説明に供する説明図、第9図は同じくそのワ
ークメモリの説明に供する説明図、
第10図は同じくビット・マツプ展開処理の一例を示す
フロー図。
第11図及び第12図は同じくラインチェック処理の一
例を示すフロー図及びその具体的説明に供する説明図、
第13図及び第14図は同じくデコード処理の説明に供
する説明図、
第15図乃至第17図は同じくデコード処理、ビットセ
ット処理及びプリンタ出力処理を示すフロー図、
第18図及び第19図は同じく用紙サイズ判定処理の説
明に供する説明図、
第20図は同じく用紙サイズ判定処理の一例を示すフロ
ー図である。
3・・・通信制御装置 1:5・・・通信手順制御
部14・・・デコードラインチェック部
15・・・FAX画情報蓄積部
16・・・印刷ドツト領域検出部
17・・・受信印刷指示部 18・・・紙サイズ表示部
1日・・・デコード処理部
20・・・プリンタ出力データ制御部
21・・・プリンタ出力インタフェース第3図
と Ω 三 ℃ ;第7図
第8図
第9図
oTop
第12図
第14図FIG. 1 is a block diagram functionally showing the main parts of a communication control device embodying the present invention, FIG. 2 is a block diagram showing an example of an information processing system equipped with the same communication control device, and FIG. A block diagram showing the specific configuration of the communication control device, FIG. 4 is a flowchart showing command analysis processing for analyzing commands input from the host side, and FIGS. 5 and 6 are data similar to those from the host side. FIGS. 7 and 8 are explanatory diagrams for explaining the bit map expansion into the work memory; FIG. 9 is an explanatory diagram for explaining the work memory; FIG. 1 is a flowchart showing an example of bit map expansion processing. 11 and 12 are flowcharts showing an example of the line check process and an explanatory diagram for explaining the same, FIGS. 13 and 14 are explanatory diagrams for explaining the decoding process, and FIGS. FIG. 17 is a flowchart showing the decoding process, bit set process, and printer output process, FIGS. 18 and 19 are explanatory diagrams explaining the paper size determination process, and FIG. 20 is a flowchart showing the paper size determination process. It is a flow diagram which shows an example. 3... Communication control device 1:5... Communication procedure control unit 14... Decode line check unit 15... FAX image information storage unit 16... Print dot area detection unit 17... Received print instruction Section 18...Paper size display section 1 day...Decoding processing section 20...Printer output data control section 21...Printer output interface Fig. 3 and Ω3°C; Fig. 7 Fig. 8 Fig. 9 oTop Figure 12 Figure 14
Claims (1)
に出力する通信制御装置において、受信データに基づい
て印刷領域を検出する検出手段と、該検出手段の検出結
果に基づいて前記プリンタで使用する用紙サイズを判定
する判定手段とを備えたことを特徴とする通信制御装置
。1 A communication control device that receives data from a facsimile machine and outputs it to a printer includes a detection means for detecting a printing area based on the received data, and a paper size to be used in the printer based on the detection result of the detection means. 1. A communication control device comprising: determination means for making a determination.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62009079A JPS63178666A (en) | 1987-01-20 | 1987-01-20 | Communication control equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62009079A JPS63178666A (en) | 1987-01-20 | 1987-01-20 | Communication control equipment |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63178666A true JPS63178666A (en) | 1988-07-22 |
Family
ID=11710608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62009079A Pending JPS63178666A (en) | 1987-01-20 | 1987-01-20 | Communication control equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63178666A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01137666U (en) * | 1988-03-15 | 1989-09-20 | ||
US8068242B2 (en) | 2007-02-26 | 2011-11-29 | Seiko Epson Corporation | Facsimile apparatus and method of controlling facsimile apparatus |
-
1987
- 1987-01-20 JP JP62009079A patent/JPS63178666A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01137666U (en) * | 1988-03-15 | 1989-09-20 | ||
US8068242B2 (en) | 2007-02-26 | 2011-11-29 | Seiko Epson Corporation | Facsimile apparatus and method of controlling facsimile apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4827349A (en) | Communication terminal device | |
JPH0761121B2 (en) | Equipment | |
EP0407154B1 (en) | Printers | |
JPS63178666A (en) | Communication control equipment | |
JPS6259330B2 (en) | ||
JPS62248360A (en) | Communication control equipment | |
JP2000078392A (en) | Information processing device | |
JPH08204862A (en) | Facsimile equipment | |
JPH0557788B2 (en) | ||
JPS6354869A (en) | Communication control equipment | |
JP3582624B2 (en) | Facsimile communication system and facsimile machine | |
JPS6282772A (en) | Data communication equipment | |
JP2522917Y2 (en) | Image processing device | |
US6115543A (en) | Data communication apparatus having a handy scanner | |
JP2623458B2 (en) | Graphic output control device | |
JP2607502B2 (en) | Facsimile interface device | |
JPH0998280A (en) | Facsimile equipment and facsimile transmission method | |
JPH05328104A (en) | Facsimile equipment | |
JP2518818B2 (en) | Communication control device | |
JPH10173838A (en) | Facsimile equipment | |
JP3213124B2 (en) | Facsimile machine | |
JP2866121B2 (en) | Facsimile machine | |
JPH0263367A (en) | Facsimile equipment and facsimile communication system | |
JP3005689B2 (en) | Data communication device | |
JPS61252742A (en) | Mixed mode terminal equipment |