JPH03293172A - 出力装置 - Google Patents

出力装置

Info

Publication number
JPH03293172A
JPH03293172A JP2095110A JP9511090A JPH03293172A JP H03293172 A JPH03293172 A JP H03293172A JP 2095110 A JP2095110 A JP 2095110A JP 9511090 A JP9511090 A JP 9511090A JP H03293172 A JPH03293172 A JP H03293172A
Authority
JP
Japan
Prior art keywords
program
cartridge
control program
control
area
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
JP2095110A
Other languages
English (en)
Other versions
JP2997005B2 (ja
Inventor
Kunio Okada
岡田 邦男
Yoshiaki Kawamura
吉章 河村
Yutaka Murakami
裕 村上
Haruo Fujita
藤田 春生
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.)
Canon Inc
Original Assignee
Canon Inc
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
Priority to JP2095110A priority Critical patent/JP2997005B2/ja
Application filed by Canon Inc filed Critical Canon Inc
Priority to DE69133428T priority patent/DE69133428T2/de
Priority to EP91303175A priority patent/EP0452115B1/en
Priority to DE69131914T priority patent/DE69131914T2/de
Priority to EP98202979A priority patent/EP0881593B1/en
Priority to DE69126677T priority patent/DE69126677T2/de
Priority to EP95202543A priority patent/EP0689158B1/en
Publication of JPH03293172A publication Critical patent/JPH03293172A/ja
Priority to US08/280,588 priority patent/US5878275A/en
Priority to US09/184,059 priority patent/US6154795A/en
Application granted granted Critical
Publication of JP2997005B2 publication Critical patent/JP2997005B2/ja
Priority to US09/690,088 priority patent/US6397271B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0008Downloading generic data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/002Generic data access
    • G06K2215/0022Generic data access characterised by the storage means used
    • G06K2215/0025Removable memories, e.g. cartridges
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0082Architecture adapted for a particular function

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本・発明は、所定の制御プログラムに従って印刷機能を
実行する印刷装置に関するものである。
〔従来の技術] 従来から知られているこの種の印刷装置のひとつでは、
ある特定の制御プログラムを内蔵ROMなどに記憶させ
、印刷装置の制御にあたらせていた。
また、従来から知られている第2の印刷装置では、内蔵
プログラムからコマンド解析ルーチンを独立させて、着
脱可能なプログラム格納媒体に収め、印刷装置本体に内
蔵されている制御プログラムのメインルーチン側で複数
のコマンド解析ルーチンを呼び分け、このことにより複
数のコマンド体系に対して1つの装置で、印刷可能とし
ていた。
従来から知られている第3の印刷装置では、印刷装置本
体に内蔵されている制御プログラムとは独立して動作す
る制御プログラムを着脱可能なプログラムカートリッジ
に記憶させ、印刷装置の立上げ処理時には、該プログラ
ムカートリッジ上の制御プログラムを実行するか内蔵の
制御プログラムを実行するかを選択していた。
ここで、プログラムカートリッジは、文字ドツトパター
ンを収めるフォントカートリッジと共通の形状をもつも
ので、カートリッジ側に“プログラム°か゛フォント情
報°かの識別記号が付されている。そして、内蔵側の制
御プログラムは、上記″プログラム°の識別記号があっ
た場合のみ、制御をプログラムカートリッジ側に移して
いた。
[発明が解決しようとする課題] しかしながら、上述した第1の従来例では、ある特定の
制御プログラムしか実行されないため、別のコマンド体
系に対応した印刷が不可能であった。
また、第2の従来例では、別の複数のコマンド体系への
対応は可能となるが、制御プログラムのメインルーチン
を装置内に持っているため、コマンド解析以外の処理(
例えば、データ源となるホストコンピュータとのハンド
シェイクの変更や、ジャム処理などにおける印刷機構部
の給紙ハンドリングの変更・追加など、装置制御に対し
ての変更)は不可能であった。このため、いろいろな印
刷機能を1つの装置で使い分けることには限界があった
さらに、第3の従来例では、−旦、制御プログラムが作
動し始めると、他方の制・御プログラムは別個独立して
動作するため、装置立上げ後のプログラム切替が困難で
あった。
しかも、第3の従来例では、装置上のハードウェアの一
部が変更されて、既存のプログラムカートリッジ上の制
御プログラムが正常に動作しないものであっても、識別
手段がないため、そのまま該制御プログラムが実行され
てしまう危険性があった。
また、複数ある印刷装置相互間で若干の制御上の差異が
生じている場合、複数あるプログラムカートリッジ群の
うち適合・不適合の判別手段がなく、不適合な制御プロ
グラムがある装置上で実行されてしまうおそれがあった
よって本発明の目的は、上述の点に鑑み、常に適切な制
御プログラムを実行し得るよう構成した印刷装置を提供
することにある。
〔課題を解決するための手段〕
本発明に係る印刷装置は、制御プログラムに従って所定
の印刷機能を実行する印刷装置において、個々の制御プ
ログラムを記憶してある格納媒体を着脱自在に装着する
ための装着手段と、印刷装置本体に内蔵されているプロ
グラム印刷装置本体に記憶されているプログラムのいず
れか一方を選択するための指示手段と、前記指示手段に
よる制御プログラムの切替要求に応答し、プログラムス
タートアドレスの設定領域から当該内容を読み出す切替
制御手段とを具備したことを特徴とするものである。
また、本発明に係る印刷装置は、制御プログラムに従っ
て所定の印刷機能を実行する印刷装置において、個々の
制御プログラムを記憶してある格納媒体を着脱自在に装
着するための装着手段と、印刷装置本体に内蔵されてい
るプログラム印刷装置本体に記憶されているプログラム
のいずれか一方を選択するための指示手段と、前記指示
手段による制御プログラムの切替要求に応答し、プログ
ラムスタートアドレスの設定領域から当該内容を読み出
す切替制御手段と、前記装着手段に装着された格納媒体
の制御プログラムが印刷装置本体に適合するか否かを判
別する判別手段とを具備したことを特徴とする。
〔作 用〕
本発明では、記録装置を駆動するための制御プログラム
を相互に切替えることができるようにするために、現在
実行中の制御プログラムが切替要求を検知すると、プロ
グラムスタートアドレスに基づいて、任意の制御プログ
ラムに制御を移すことができる。
本発明によれば、制御プログラムの切替えを行う際に、
その時点での切替えが可能であるか否かをチエツクする
ことができるので、不用意な制御プログラム切替えに起
因するデータの消失やプリンタの紙詰まりを防ぐことが
できる。
本発明によれば、内蔵プログラムと外部プログラムを相
互に切替える際に、ビジィラインをオンにすることによ
り、ホストコンピュータ等のデータ供給源からのデータ
の転送を一時停止させ、これにより必要とされるデータ
の消失を防ぐことができる。
本発明によれば、格納媒体に記憶されている制御プログ
ラムの適・不適を判別することができるので、不適合プ
ログラムが誤って実行されるのを防止することができる
[実施例〕 以下に、図面を参照して本発明の実施例を詳細に説明す
る。
火」U吐土 第1図は、本発明を適用した一実施例であるレーザビー
ムプリンタのうち、制御部100の概略構成を示すブロ
ック図である。第1図中102は、データ発生源となる
ホストコンピュータであり、101は装置全体を制御す
るCPUである。103は、ホストコンピュータ102
からのデータを入力信号線S1を介して入力する入力イ
ンタフェース回路である。入力インタフェース回路10
3は、またCPUl0Iの指示に従いビジィ−信号線S
2を0N10FFし、ホストコンピュータに、データ送
信不可/可を知らせる。
104は、本レーザビームプリンタの制御プログラム及
び文字パターンを格納しておく ROMであり、その格
納形式は後述する第2図に、そのプログラムの流れは後
述する第1O図、第11図、第12図に示される。
105は、後述の制御プログラム(第1O図〜第14図
)が使用するRAMであり、その詳細は、第5図で後述
する。
106は、不揮発性RAMであり一般のEEFROMで
構成され、電源切断後も、保存しておくべき情報を入れ
ておく。その詳細は第7図で後述する。なお、以後この
不揮発性RAMをNVRAMと称す。
107は増設用のRAMカードであり、RAM105の
拡張として使用される。
108は、第1のプログラムカートリッジ109.第2
のプログラムカートリッジ110とのハードウェア的イ
ンタフェースをとるカートリッジインタフェース回路で
あり、CPUl0Iからのプログラムカートリッジ上の
ROMへのアクセスを司どる。上記プログラムカートリ
ッジ109,110は、複数のROMと関連素子で構成
されたROMボードをカートリッジに収めたプログラム
カートリッジである。
このプログラムカートリッジ上のROMに、前述したR
OM104に格納された制御プログラムとは別の制御プ
ログラム及び文字パターンが格納される。その格納形式
は第2図に、そのプログラムの流れは第13図、第14
図で後述される。これらプログラムカートリッジ109
,110は、第15図に示すように本レーザビームプリ
ンタ本体に用意された左右2つのカートリッジコネクタ
1501.1502により本体との着脱が可能となる。
ここでは、第1のプログラムカートリッジ109を左側
カートリッジコネクタ1501、第2のプログラムカー
トリッジ110を右側カートリッジコネクタ1502に
装着するものとする。
111は、操作パネル112への信号をCPUl0Iへ
入出力するためのパネルインタフェース回路であり、こ
の回路を経由してCPUl0Iは、操作パネル上のLE
Dの点灯やスイッチのセンスを行なう。
112は、本レーザビームプリンタの操作パネルであり
、その構成は第9図で後述する。
113は、後述するページバッファ517(第5図参照
)上に展開された1ペ一ジ分の画像データを画像信号に
変換する画像信号発生器であり、印刷機構部115の同
期信号に同期して、画像信号を印刷機構部115へ出力
する。
114は、制御部100と印刷機構部115との間の人
出力を行なう出力インタフェース回路であ1 2 る。
115は、本レーザビームプリンタの印刷機構部であり
、画像信号を受けて、用紙の給紙、レーザー光の発生7
画像の用紙への転写・定着といったレーザビームプリン
タの一連の印刷プロセスを実現する。
以上の構成により本プリンタは、ROM104上の制御
プログラム及び第1のプログラムカートリッジ109、
第2のプログラムカートリッジ110上の制御プログラ
ムの、それぞれ異なった3種の制御プログラムを用意し
、これを切替えて、使用できる手段を提供している。
第2図は制御プログラムを収めるROM104及びプロ
グラムカートリッジ109.110上のROMの格納形
式を示した図である。
以後、ROM104へ収められる本来本プリンタが持っ
ている制御プログラムを本体プログラムとよび、着脱可
能なプログラムカートリッジ109,110に収められ
る制御プログラムを総称してカートリッジプログラムと
よぶ。また、第1のプログラムカートリッジ109に収
められているものをカートリッジプログラム0.第2の
プログラムカートリッジ110に収められているものを
カートリッジプログラム1と呼ぶ。
第2図において、200は本体プログラムの格納形式を
示したものであり、201はCPUl0Iの割込ベクト
ルである。このCPUl0Iは、0番地から、順にスタ
ックボインク初期アドレスa。番地、プログラムスター
トアドレスa2番地、各種割込スタートアドレスa2〜
an番地をアクセスする。a2〜an番地は、RAM1
05の先頭の領域である後述する第5図501に順に割
り振られる。
202は、本体プログラムの識別名を表わすもので、制
御プログラム毎に一意の2桁の番号がつけられる。これ
を「プログラムIDJと呼ぶ。
203ば、本体プログラム再スタートアドレス格納領域
であり、カートリッジプログラムから、本体プログラム
へ切替わる際の、ジャンプ命令(再スタートアドレスb
1番地へジャンプ)が収められる。本アドレス格納領域
は、bo番地に割振られ固定化される。
204は、本体プログラム割込ベクトルテーブルである
。各種割込に対して、本体プログラム上に、それぞれC
2,C3,・・・cnからスタートする割込処理ルーチ
ンが用意され、この割込ベクトルテーブル204上にそ
れぞれの割込処理ルーチンへのジャンプ命令が用意され
る。
205は、外部参照ルーチン呼出しテーブルである。こ
れはROM 104上に用意したプログラム(サブルー
チン)をカートリッジプログラムが呼び出して利用でき
るように設けられたもので、本実施例ではNVRAM1
06への書込み及び読出しのためのサブルーチンを用意
している。
本テーブル205中、206はNVRAM書込ルーチン
212へのジャンプ先e+番地を収めた領域で、d+番
地に割り振られ固定化される。207は、NVRAM読
出ルーチン213へのジャンプ先82番地を収めた領域
で、d2番地に割振られ固定化される。208は、NV
RAM書込ルーチン212または読出しルーチン213
に対して、NVRAMの書込または読出しのアドレスを
指示するもので、本領域208に書き込まれたRAM1
04上のアドレスe3の内容、すなわちNVRAM指定
アドレス507が指定書込(読出し)アドレスとなる。
同様に209は、NVRAM書込ルーチン212または
読出しルーチン213に書込値を与える、または、読出
し値を受取るための領域を指定するもので、本領域20
9に書込まれたRAM104上のアドレスe4の内容、
すなわちNVRAM設定値508がその値となる。21
0は、NVRAM書込みルーチン212゜NVRAM読
出しルーチン213の使用するRAM領域506の総数
(Kバイト)である。
RAM上のNVRAM指定アドレス領域507を先頭に
にバイト分が、NVRAM書込み、読出しのために用意
され、この領域506は本体プログラム カートリッジ
プログラムの使用RAM領域とは分離されて使われる。
211は、第1O図〜第12図で示される本体プログラ
ムの格納領域である。
212は外部参照ルーチンの1つであるNVRAM書込
ルーチンの格納領域であり、213はNVRAM読出5 しルーチンの格納領域である。214は、ホストコンピ
ュータ102から入力される文字コードに対する文字の
ドツトパターン群を収めたフォント領域であり、215
はフォントの識別領域、216はフォント領域214の
総容量を表わすフォント容量m。
217は文字ドツトパターンの実体を収める文字パター
ン領域から構成される。
上記格納形式200において、201〜205はROM
104上のO番地からの固定番地に割振られる。
カートリッジプログラムは、本体プログラム211や外
部参照ルーチン212.213を、固定的に定義された
番地の内容から間接的に参照する。従って、プログラム
修正などにより、211以下の領域の内容が変更されR
OM104上の番地にずれが生じても、201〜205
の領域の内容がその変更に対応されるため、カートリッ
ジプログラム側に影響を与えない。
250はカートリッジプログラムの格納形式を示したも
のである。250中、251はカートリッジ識別領域で
あり、その内訳を第3図に示す。本領域 6 は、4バイト構成であり、第3図中301はカートリッ
ジタイプ領域であり、“Po又はF°が入れられる。こ
の°P゛は、以下の領域がカートリッジプログラムであ
ることを表わし、 °F゛は以下の領域がフォント(文
字パターン)領域であることを表わす。
また、第3図の302はカートリッジサブタイプであり
、カートリッジタイプ301がP゛の場合、“L゛、 
“R’、’B’のいずれかが入れられる。ここでL゛は
、第1のプログラムカートリッジ109専用のカートリ
ッジプログラムであることを表わし、“R゛は、第2の
プログラムカートリッジ110専用のカートリッジプロ
グラムであることを表わす。また“B゛は、第1および
第2のプログラムカートリッジ共用のカートリッジプロ
グラムであることを表わす。
後述の第8図に示すように、第1および第2プログラム
カートリッジ間でアドレス領域が異なるため、それぞれ
の領域で利用するカートリッジプログラムを本カートリ
ッジサブタイプ302で識別する。 °B゛は、例えば
カートリッジプログラムのROM領域を全て相対アドレ
スで記述し、アドレス領域に依存しないものに対して適
用される。
カートリッジタイプ301が“Foの場合、カートリッ
ジサブタイプ302は、フォントの小分類としての識別
子に使われ、本実施例では°A゛を本体プログラム専用
フォントを表わす識別子として定義し、 ’B’ 、 
 ’C’ 、  ’D’ ・・・をそれぞれ作成される
種々のカートリッジプログラムの専用フォントを表わす
識別子として定義する。
301のカートリッジタイプ、302のカートリッジサ
ブタイプを総称してカートリッジよりコード303と呼
ぶ。304はカートリッジプログラムやフォントに一意
に付される識別子で、2桁の番号で表わされる。これを
カートリッジID番号304と呼ぶ。
252はカートリッジプログラム関連領域257の総容
量n。を格納するカートリッジ容量領域である。
253は、製品適合フラグと名付けられた情報な格納す
る領域である。この製品適合フラグ253は、シリーズ
化された本プリンタの製品系列において、いずれの製品
(複数)に適合可能かを示すものであり、第4図に示す
ように16ビツトの独立したビット単位のフラグからな
り、それぞれのビットが、製品系列上の1製品(将来の
製品を含んで)を表わし、ビット内容゛1゛が適合可能
、“0゛が適合不可能を表わす。
この適合可能・不可能は、各製品の制御部100のハー
ドウェア構成や格納される本体プログラム、特に、外部
参照ルーチン205の提供状況などにより、カートリッ
ジプログラム作成時に決定される。254はカートリッ
ジプログラムスタートアドレスの格納領域で、本体プロ
グラムからカートリッジプログラムへ切替る際のジャン
プ命令(スタートアドレスα1番地へジャンプ)が収め
られる。本格納領域は、α0番地に割振られ固定化され
る。
255ば、カートリッジプログラムの割込ベクトルテー
ブルであり、204の本体プログラムの割込 9 ベクトルテーブルと構造は同様のものである。各種割込
に対してカートリッジプログラム上に、それぞれβ2.
β3.・・・β。からスタートする割込処理ルーチンが
用意され、この割込ベクトルテーブル255上にそれぞ
れの割込処理ルーチンへのジャンプ命令が用意される。
256は、第13図、第14図に示されるカートリッジ
プログラムが格納されるカートリッジプログラム格納領
域である。
258ば、前述のフォント領域214と同じ形式のフォ
ント領域であり、ここではカートリッジプログラム用の
文字パターン群が収められる。259は、このフォント
領域のカートリッジ識別領域であり、形式は前述のカー
トリッジ識別領域251と同様である。カートリッジプ
ログラム用フォントとして、カートリッジIDコード3
03に“FB’ が付けられる。
260はフォント領域258の総容量n1を収めるカー
トリッジ容量格納領域である。261は、カートリッジ
プログラムが使用する文字ドツトバク−0 ンの実体を収める文字パターン領域である。
262も前述のフォント領域258と同一形式のフォン
ト領域であり、ここでは、本体プログラムの追加文字セ
ットとしての文字パターン群が収められる。263が、
そのカートリッジ識別領域であり、本体プログラム用フ
ォントとしてカートリッジIDコード303  °FA
’が付けられる。264は、フォント領域262の総容
量n2の格納領域、265は文字パターン領域である。
第5図は、RAM105 (第1図参照)上のデータ構
造を示したものである。501はRAM上の固定アドレ
スa2〜a0に収める割込処理ジャンプテーブルであり
、本体プログラムスタート又は再スタート時にROM1
04上の本体割込ベクトルテーブル204からコピーさ
れる。また、カートリッジプログラムスタート時にプロ
グラムカートリッジ上のカートリッジプログラム割込ベ
クトルテーブル255からコピーされる。CPU割込ベ
クトル201はROM上のアドレスa2+ am、・・
・a、lへ向けられており、上記のように、それぞれの
制御プログラムがスタート(再スタート)する毎に50
1の領域を書き換えることにより、それぞれの制御プロ
グラムの割込処理ルーチンが使用可能となる。
502は、それぞれの制御プログラムが、他方の制御プ
ログラムへ切替る際に、必要情報を保存してお(ために
用いる保存領域で、それぞれの制御プログラムに専用に
、本体保存領域503.第1のカートリッジO保存領域
504.第2のカートリッジ1保存領域505が用意さ
れる。これらの領域は、RAM104上の固定アドレス
f、、 f2. f3を先頭に固定化される。
506は、外部参照ルーチンとして定義されたNVRA
M書込みルーチン及びNVRAM読出しルーチンが使用
する外部参照RAM 、領域である。本領域の先頭部分
は、これら外部参照ルーチンと呼出し側の制御プログラ
ムとのデータの引き渡しに使用される部分で、507は
NVRAMの読み書きアドレスを指定す6 NVRAM
指定アドレス領域、508はNVRAM ヘの書込み値
の指定、又は、NVRAMからの読み出し値の引渡しに
使用されるNVRAM設定値領域である。NVRAM指
定アドレス領域507及びNVRAM設定値領域508
は、前述のように外部参照ルーチン呼出しテーブル20
5を介して、間接的にそれぞれの番地e3. e<がア
クセスされる。509はNVRAM書込ルーチンや、N
VRAM読出しルーチンが内部でフラグ変数として使用
する作業用RAM領域である。
510は、フリー領域と呼ばれ、制御プログラムが切替
る毎に、制御部100の制御権を得た制御プログラムが
、自分自身のプログラムを実行させるために利用するR
AM領域であり、第5図の511〜517は、そのRA
M構造の一例である。511は、ホストコンピュータ1
02から、コマンドデータとして指示されたプリンタの
動作モードを覚えてお(動作モードテーブルである。こ
こでは、RAM1.04や第1および第2のプログラム
カートリッジ109゜110上に複数用意されるフォン
ト領域のどのフォントを選択して文字パターンを発生さ
せるかを指定する選択フォント512、及び、後述のペ
ージバッファ517に作成した1ペ一ジ分の画像の複数
枚印刷を指示するコピー枚数513が用意される。
 3 4 なお選択フォント512には、フォント領域の先頭の識
別コード215,259,263が利用される。
514は、制御プログラムの作業用領域で、変数やフラ
グ類が設定される。515は、作業用領域514上に取
られるData Flag  (データフラグ)と呼ば
れるフラグであり、後述のページバッファ517に、未
印刷のデータが残っているか否かを表わすフラグである
516は、受信バッファであり、ホストコンピュータ1
02から人力されたデータは、入力インタフェース回路
103を介して、制御プログラムの受信割込処理により
、本領域に一時保存される。
517は、ホストコンピュータからの入力データを基に
、1ペ一ジ分のビットマツプ化された画像データを保存
するページバッファである。
第6図は、第5図の保存領域502の構造及びフリー領
域との関係を示す図である。504は、保存領域の一例
としてのカートリッジO保存領域であり、以下の項目が
含まれる。まず、601は、この保存領域を着脱可能で
、複数供給される第1のカートリッジプログラムOのど
の制御プログラムが使用しているかを示す保存ID番号
をセットする領域である。保存ID番号には、カートリ
ッジID番号304が利用される。602は、動作モー
ド保存領域であり、フリー領域内の動作モードテーブル
511の内容が保存/復帰される。605は、受信バッ
ファ保存領域であり、フリー領域内の受信バッファ51
6が、保存/復帰される。
第7図は、NVRAM106のデータ構造を示したもの
である。NVRAM106は16ビツト幅で16ワード
の容量を有し、それぞれワード単位に0,1.・・・1
5のアドレスが付される。701は、アドレス1に収め
れたプログラムモード領域で、現在勤いている制御プロ
グラム、又は、本レーザビームプリンタの電源がオフさ
れる直前に動いていた制御プログラムが、本体プログラ
ムであるか、第1のカートリッジプログラムOであるか
、第2のカートリッジプログラム1であるかを記憶する
領域である。
プログラムモードは、文字コード“Moを本体プログラ
ム実行、 “L゛を第1のカートリッジプログラムO実
行、 °R゛を第2のカートリッジプログラムl実行と
定義される。このプログラムモード領域701の15ビ
ツト目は、奇数パリティピット領域702であり、プロ
グラムモード領域701の奇数パリティが収められ、N
VRAM読み出し/書込み時の誤り検知に利用される。
第8図は、CPU100のアドレス空間を示す図である
。801は、本体プログラム領域であり、0□8番地か
ら割り振られ、物理的にROM104に対応づけされる
。そして、本体プログラム格納形式200の形式で、本
体プログラムの情報が収められる。
802は、カートリッジO領域で、200000M、、
番地から割り振られ物理的に第1のプログラムカートリ
ッジ109上のROMに対応づけられる。そしてカート
リッジプログラム格納形式250の形式で第1のカート
リッジプログラム0の情報が収められる。
803は、カートリッジl領域で400000□8番地
から割り振られ、物理的に第1のプログラムカートリッ
ジ110上のROMに対応づけられる。そして、カート
リッジプログラムOと同様に、カートリッジプログラム
格納形式250の形式で第2のカートリッジプログラム
1の情報が収められる。
804はRAM領域で、800000□8番地から割り
振られ、物理的にRAM105へ対応づけられる。そし
て第5図に示すデータ構造が適用される。
805は、増設RAM領域で、AOOOO0□8番地か
ら割り振られ、物理的に、増設RAMカード107に対
応づけられる。
806はI10アドレス領域で、CPUが、入力インタ
フェース回路103やパネルインタフェース回路111
 、 NVRAM106など制御部100ノ各回路と信
号のやり取りを行なうI10ボートが割り振られる。
第9図は、操作パネル112の表示器、スイッチ配置を
示した図である。901は一般の7セグメン)−LED
2桁で構成された状態表示器で、制御プログラムの指示
により、現在実行中の制御プログラムの種類や、エラー
発生時のエラー表示を行な 7 う。
902.903,904は、プログラムモード切替スイ
ッチであり、MAINスイッチ902の押下が本体プロ
グラムへの切替要求、Lスイッチ903がカートリッジ
プログラムOへの切替要求、Rスイッチ904がカート
リッジプログラム1への切替要求となる。
これらのスイッチは、制御プログラムにより、CF3I
吋がこれらのスイッチの押下状態をセンスすることによ
って検知され、実行に移される。
以上の構成をもつ本レーザビームプリンタの本体プログ
ラムのフローチャートを第10図、第11図、第12図
に示し、本体プログラムが実行される際の本レーザビー
ムプリンタの動作を説明する。
第1θ図は、本体プログラムのスタート処理1000の
フローチャートであり、電源が投入されると、CPUl
0Iは、CPU割込ベクトル201のプログラムスター
ト番地a1を参照して、a0番地からスタートする本体
プログラムヘジャンプする。
そこで、まずステップ1001において、制御部 8 100のセルフテストを実行し、ステップ1002で保
存領域502を、ステップ10o3で外部参照RAM領
域506を初期化しておく。
次にステップ1004で、NVRAM読込みルーチン2
12を利用して、NVRAMl06のプログラムモード
領域701から、プログラムモードな読み込み、ステッ
プ1005で、どの制御プログラムをスタートさせるか
を判断する。ステップ1005で、プログラムモードが
M°の場合、本体プログラム実行を表わすので、ステッ
プ1006以下へ進み、本体プログラムを続行する。
まずステップ1006で、本体割込ベクトルテーブル2
04をRAM105上の割込処理ジャンプテーブル50
1ヘコピーする。次にステップ1007でフリー領域5
10を本体プログラム用に初期化する。続いてステップ
1008で、ビイシイ−信号s2をOFFにしてホスト
コンピュータにデータの送信可能を知らせ、ステップ1
009で、状態表示器901にプログラムID202を
表示し、現在実行中の制御プログラムが本体プログラム
であることを示す。
そしてステップ1010で、第11図に示す本体プログ
ラムのメインルーチンへ飛ぶ。
一方、ステップ1005で、プログラムモードがL′の
場合、カートリッジプログラム0の実行の要求を表わす
ので、ステップ1011へ進み、まず、第1のプログラ
ムカートリッジ109側のカートリッジ識別領域251
のカートリッジIDコード303をチエツクする。
ここで、カートリッジIDコード303が°PL’の場
合は、このプログラムカートリッジ109が、カートリ
ッジプログラムO用の制御プログラムを有すことを表わ
し、また、カートリッジIDコード303がPB’の場
合、このプログラムカートリッジ109がカートリッジ
プログラム0.1兼用の制御プログラムを有することを
表わす。またカートリッジIDコード303がPL’ 
、  ’PB’以外のものの場合、カートリッジプログ
ラムOへの移行が不適であるので、移行を中止し、ステ
ップ1006へ進んで本体プログラムを続行する。
ステップ1011でカートリッジIDコード303がP
L’   “PB“の場合、現在装着されているプログ
ラムカートリッジ109上のカートリッジプログラムが
利用可であることを示すので、次にステップ1012へ
進み、もう一つのチエツクである製品適合フラグ253
のチエツクを行なう。
本レーザビームプリンタに定義されている製品モデルに
対応するビットフラグが製品適合フラグ253中に立っ
ているか否かをチエツクし、立っていれば、現在装着さ
れているプログラムカートリッジ109上のカートリッ
ジプログラムが、本レーザビームプリンタに適用可能で
あるとしてステップ1013へ進み、カートリッジ0領
域802上の番地200000+α。すなわち、カート
リッジプログラムスタートアドレス格納領域254へ飛
び、その内容、α1番地へのジャンプ命令に従い、第1
3図に示すカートリッジプログラムのスタート処理13
00へ進む。
ステップ1012で、製品適合フラグ253の対応ビッ
トが立っていない場合、このカートリッジプログラム0
が、本レーザビームプリンタに適用子1 可能を示すので、カートリッジプログラムOへの移行を
中断して、ステップ1006以下の本体プログラムの続
行へ進む。
ステップ1005で、プログラムモードがR°の場合、
カートリッジプログラム1の実行を表わすので、ステッ
プ1011−1013のカートリッジプログラムOの場
合と同様に、プログラムカートリッジlについて、ステ
ップ1014でのカートリッジIDコード303のチエ
ツク、ステップ1015での製品適合フラグ253のチ
エツクを経てステップ1016へ進み、カートリッジ1
領域803上の番地400000+α。へ飛び、カート
リッジプログラム1へCPUl0Iの制御が渡される。
第11図は、第10図の本体プログラムスタート処理1
000又は後述する第12図の本体プログラム再スター
ト処理1200から飛んで(る、本体プログラムのメイ
ンルーチン1100のフローチャートである。
まずステップ1101で、プログラムモード切替スイッ
チ902,903,904のいずれかが押されたかを 
2 チエツクする。どれも押されていなければ、ステップ1
101〜1108の処理を繰返し続行する。
まず、ステップ1102で受信バッファにデータがある
か否かをチエツクし、ホストコンピュータからの入力デ
ータが、受信バッファにセットされるまで、ステップ1
101のスイッチチエツクを行ないながら待つ。
受信バッファにデータが存在する場合、ステップ110
3へ進み、まず、受信バッファからデータを取り出し、
データ解析を行なう。ここで、コマンドか文字コードか
が見分けられ、フォント選択コマンドの場合は、指定値
を選択フォント領域512へ、コピー枚数指定コマンド
の場合は指定値をコピー枚数領域513へ記憶する。
文字コードの場合、ステップ1104に進み、選択フォ
ント領域512に指定されている識別コードから、対応
するフォント領域214又は265を選び出し、対応す
る文字ドツトパターンをベージバッフy 517上に展
開し、同時にData Flag  (データフラグ)
515をONにしてページバッファ517上に印刷デー
タがあることを示す。そしてステップ1105へ進み、
1ペ一ジ分のデータの解析が終了するまで、ステップ1
101〜1105を繰り返えさせる。
1ペ一ジ分のデータ解析が終了すると、ステップ110
6へ進みページバッファ517上の画像データを画像信
号発生器113に送って、印刷機構部115に、印刷を
行なわせる。そしてステップ1107で、コピー枚数領
域513で指定されているコピー枚数分ステップ110
6〜1107を繰返えさせる。
指定校数分の印刷が終了すると、ステップ1108へ進
み、Data Flag  (データフラグ)515を
OFFにして、ページバッファ517上に印刷すべきデ
ータなしを示し、ステップ1101へ戻る。
ステップ1101で、プログラムモード切替スイッチ9
02,903,904のいずれかが押されていた場合、
ステップ1109以下のプログラム切替処理へ進む。
まず、ステップ1109でビイジー信号S2をONにし
てポストコンピュータ102にデータ送信停止の要求を
出し、これ以上ポストコンピュータ102からデータが
送られてこないようにする。
次にステップ1110で、D’ataFlag  (デ
ータフラグ)515をチエツクする。このData F
lag  (データフラグ)515がONの場合、ペー
ジバッファ517上に印刷データが残っているので、プ
ログラム切替不可として、ステップ1120で状態表示
器901にエラー表示を出し、ステップ1121で、ビ
イジー信号S2を元に戻して、ステップ1101へ戻る
Data Flag  (データフラグ)515がOF
Fならばステップ1111へ進み、どのプログラムモー
ド切替スイッチが押されたかをチエツクする。
MAINスイッチ902が押された場合、現在本体プロ
グラムが実行中なので、このスイッチ押下は無効として
、ステップ1120でのエラー表示、ステップ1121
でのビイジー信号S2復帰を経由してステップll01
へ戻る。
Lスイッチ903が押された場合、ステップ1112以
下へ進み、カートリッジプログラムOへの移行手続きに
入る。前述のステップ1011.1012と同様 5 6 に、ステップ1112で、カートリッジIDコード30
3をチエツクし、ステップ1113で製品適合フラグ2
53をチエツクし、問題なければステップ1114へ進
み、動作モードテーブル511及び受信バッファ516
の内容を本体保存領域502ヘコピーし、記憶させる。
そして、ステップ1115で、200000+α。
番地経由で始まるカートリッジプログラムOへ、CPU
l0Iの制御を移す。
ステップ1112.1113で、チエツクをパスしなか
った場合、ステップ1120で状態表示器901にエラ
ーが表示され、ステップ1121でビイジー信号s2が
戻されステップ1101へ戻る。
ステップ1111で、Rスイッチ904が押されていた
場合、ステップ1116以下のカートリッジプログラム
1への移行手続きに入る。これは、ステップ1112〜
1115のカートリッジプログラム0と同様の処理を第
1のプログラムカートリッジ110に対して行なうもの
で、ステップ1116でのカートリッジIDコード30
3のヂエック、ステップ1117の製品適合フラグ25
3のチエツク、ステップ111gの本体保存領域への動
作モードテーブル511及び受信バッファ516の保存
を経て、ステップ1119で、400000+α。番地
を経由して始まるカートリッジプログラム1へCPUl
0Iの制御を移す。
第12図は、カートリッジプログラムから、本体プログ
ラムへCPUl0Iの制御が移される際の本体プログラ
ムの再スタート処理1200の流れを表わすフローチャ
ートである。
再スタートは、カートリッジプログラムから本体プログ
ラムb。番地へのジャンプから始まる。まず、ステップ
1201です。番地の領域、すなわち本体プログラム再
スタートアドレス格納領域203を参照して、再スター
ト処理の実体b1番地へジャンプし、ステップ1202
以下の再スタート処理を実行する。ステップ1202で
、現在、カートリッジプログラム用の割込ベクトルテー
ブル255がコピーされている割込処理ジャンプテーブ
ル501を本体割込ベクトルテーブル204で、コピー
し直す。
次に、ステップ1203で、カートリッジプログラム用
に使用されていたフリー領域510を本体プロダラム用
に初期化し直し、ステップ1204で、前回本体プログ
ラムからカートリッジプログラムへ切替えた際、保存し
た情報(ステップ1114 、1118)を本体保存領
域503から、フリー領域510の所定の領域ヘコビー
する。
次にステップ1205で、ビイジー信号S2をOFFに
して、ホストコンピュータ102ヘデータ送信可能を知
らせ、ステップ1206で状態表示器501にプログラ
ムID202を表示し、本体プログラムが再び動き始め
たことを知らせる。そしてステップ1207で、NVR
AM書込ルーチンを用いてプログラムモードとして°M
’  (本体プログラム実行)を、NVRAM106の
プログラムモード領域701へ保存し、ステップ120
8で、本体メインルーチン1100へ進む。
第13図、第14図は、プログラムカートリッジ上のカ
ートリッジプログラムの一例を示すフローチャートであ
る。
第13図は、カートリッジプログラムのスタート処理1
300のフローチャートである。まずステップ1301
で、本体プログラム又は他方のカートリッジプログラム
からカートリッジ領域802又は803の先頭からの相
対アドレスα。番地へジャンプ(ステップ1115.1
119.1411) したプログラムの制御は、α0番
地のカートリッジスタートアドレス格納領域254を参
照してスタート処理の実体α3番地ヘジャンプし、ステ
ップ1302以下のスタート処理を実行する。
ステップ1302で、本体側のプログラムID202を
チエツクし、所定のプログラムIDであれば、本カート
リッジプログラムは本体プログラムに適合するものとし
て、ステップ1303へ進み、メモリ容量のチエツクを
行なう。特定のカートリッジプログラムで、増設RAM
カード107が必須の構成となる場合、ここでチエツク
を受けることになる。
メモリ容量に問題がなければ、ステップ1304でカー
トリッジプログラム用割込ベクトルテーブル253をR
AM105上の割込処理ジャンプテーブル501ヘコピ
ーする。
次に、ステップ1305でフリー領域510をカート 
9 0 リッジプログラム用に初期化する。
次にステップ1306で、カートリッジ保存領域(カー
トリッジプログラムOの場合はカートリッジ0保存領域
504、カートリッジプログラムlの場合はカートリッ
ジ1保存領域505)の保存ID601をチエツクする
。この保存ID601が、空(初期化状態のまま)なら
ば、ステップ1310へ飛ぶ。
ステップ1306保存ID601が、現在実行中のカー
トリッジプログラムのカートリッジID番号304と致
しているならば、これは保存領域の内容が、前回このカ
ートリッジプログラムから本体プログラムへ移行する直
前に保存されたカートリッジプログラムの情報を表わす
ので、ステップ1307へ進み、カートリッジ保存領域
504又は505の内容を、フリー領域510の所定の
場所に戻す。
ステップ1306で、保存ID601とカートリッジI
D番号304が一致しない場合、これはプログラムカー
トリッジが別のものに変換され、前回カートリッジ保存
領域504又は505に情報が保存されたときとは、別
のカートリッジプログラムが実行されていることを示す
ので、ステップ1308で、状態表示器901へ警告の
エラー表示を行ない、ステップ1309で操作パネル1
12上の任意のスイッチ902゜903、904が押さ
れるまで待って、ステップ1310へ飛ぶ。
次にステップ1310で、ビイジー信号S2を叶Fにし
てホストコンピュータ102ヘデータ送信可能を知らせ
、ステップ1311で状態表示器にカートリッジID番
号304を表示し、ステップ1312テ、NVRAM書
込ルーチンを用いて、プログラムモードとしてL° (
または°R’)をNVRAM106(7)プログラムモ
ード領域703へ保存し、ステップ1313でカートリ
ッジプログラムのメインルーチン1400へ進む。
ステップ1302.1303のチエツクで条件が合わな
かった場合、ステップ1314へ進み、状態表示器90
1にエラー表示を行ない、ステップ1315で、操作パ
ネル112上の任意のスイッチ902.903.904
が押されるのを待ってステップ1316本体プログラム
のスタートa1番地ヘジャンプさせる。
第14図はカートリッジプログラムのメインルーチンの
一例であり、ここでは説明上、カートリッジプログラム
Oの場合のメインルーチン1400を示す。
まずステップ1401でプログラムモード切替スイッチ
902,903,904のいずれかが押されたかをチエ
ツクする。どれも押されていなければ、ステップ140
1〜1406の処理を繰返し続行する。
まずステップ1402で受信バッファにデータがあるか
否かをチエツクし、ホストコンピュータからの入力デー
タが受信バッファにセットされるまで、ステップ140
1のスイッチチエツクを行ないながら待つ。
受信バッファにデータが存在する場合、ステップ140
3へ進み、まず受信バッファからデータを取り出し、本
体プログラムとは、別のコマンド体系に従ったデータ解
析を行なう。ここで、コマンドか文字コードかが見分け
られ、フォント選択コマンドの場合は、指定値を選択フ
ォント領域512へ、コピー枚数指定コマンドの場合は
指定値をコピー枚数領域513へ記憶する。
文字コードの場合、選択フォント領域512に指定され
ている識別コードから、対応するフォント領域258を
選び出し、対応する文字ドツトパターンをページバッフ
ァ517上に展開する。そしてステップ1404へ進み
、1ペ一ジ分のデータの解析が終了するまで、ステップ
1401〜1404を繰り返えさせる。
1ペ一ジ分のデータ解析が終了すると、ステップ140
5へ進み、ページバッファ517上の画像データを画像
信号発生器113に送って、印刷機構部115に印刷を
行なわせる。そして、ステップ1406でコピー枚数領
域513で指定されているコピー枚数分ステップ140
5〜1406を繰返えさせる。指定校数分の印刷が終了
すると、ステップ1101へ戻る。
ステップ1401で、プログラムモード切替スイッチ9
02.903.904のいずれかが押されていた場合、
ステップ1407以下のプログラム切替処理へ進 3 む。
ステップ1407で、どのプログラムモード切替スイッ
チが押されたかをチエツクし、Lスイッチ903が押さ
れた場合、現在実行中のカートリッジプログラムOを切
替要求しているので、無効としてステップ1401へ戻
る。
Rスイッチ904が押されていた場合、ステップ140
8以下のカートリッジプログラム1への移行手続きには
いる。本体プログラムのステップ1101と同様に、ス
テップ1112で、カートリッジIDコード303をチ
エツクし、カートリッジコネクタ1502に有効なカー
トリッジプログラムがあるか否かをチエツクする。有効
なカートリッジプログラムの存在が確認されれば、ステ
ップ1409へ進み、カートリッジO保存領域504の
保存ID領域601に、現在実行しているカートリッジ
プログラムOのカートリッジID番号304を記録し、
ステップ141Oでフリー領域510上の動作モードテ
ーブル511及び受信バッファ516の内容をカートリ
ッジO保存領域504にコピーする。
 4 そしてステップ1411へ進み、400000+α。番
地を経由して始まるカートリッジプログラム1へCPU
l0Iの制御を移す。ステップ1408で有効なカート
リッジプログラムの存在が確認できなかった場合、ステ
ップ1401へ戻る。
ステップ1407で、MAINスイッチ902が押され
ていた場合、ステップ1412.1413へ進み、前述
のステップ1409.1410と同様に、カートリッジ
ID番号304及びフリー領域510上の必要情報をカ
ートリッジO保存領域504にコピーし、ステップ14
14でb0番地経由で始まる本体プログラムの再スター
ト処理1200へ飛ぶ。
以上説明してきたように、本実施例では本体プログラム
及びカートリッジプログラム0.1のうち現在実行中の
プログラムが切替要求スイッチをチエツクすることで切
替要求を検知し、要求された他プログラムに対して固定
的に定められている当該プログラムのスタート(再スタ
ート)アドレスの格納番地から、スタート(再スタート
)アドレスを得、CPUの制御を移すことにより、制御
ブログラムの切替えを可能にしている。
また、上記実施例ではページバッファ517に画像デー
タを書込んだ時点で、Data Flag  (データ
フラグ)515を立て、ページバッファ517の画像デ
ータの出力が終了した時点で、Data Flag(デ
ータフラグ)515をOFFすることにより(すなわち
、ページバッファに印刷すべき、あるいは印刷中の画像
データが存在している間) DataFlag (デー
タフラグ)515がONにされる。
ここで、切替スイッチ902,903.904による制
御プログラム切替要求が発生した際、Data Fla
g(データフラグ)515をチエツクすることにより、
未だ、印刷すべきデータが残留しているのを検知し、こ
の場合、制御プログラムの切替を中止することで、残留
印刷データが消失するのを防ぐことができる。さらに、
この場合には表示器901に警告表示を行なうことで、
操作者に対して制御プログラム切替中止を知らせ、次の
処置を要求できる。
さらに上記実施例では、切替スイッチによる切替要求を
検知した時点でホストコンピュータに対してビイジー信
号S2をONすることにより、ホストコンピュータから
のデータ送信の停止要求を出し、データ送信を止めてい
る。これによって、制御プログラムが切替わり、新しい
制御プログラムのスタート処理中にホストコンピュータ
からのデータが入力され、そのデータが消失してしまう
といった事態を避けることができる。
上述した実施例では、着脱可能なプログラムカートリッ
ジ側に製品適合フラグ253を設け、該フラグの各ビッ
トを各種製品モデルに対して各々独立に、本カートリッ
ジプログラムが使用できるか否かのフラグとして予め割
付けてお(。このプログラムカートリッジがプリンタ本
体に装着された際、本体プログラムが、プログラムカー
トリッジ上の複数ビットからなる製品適合フラグ253
中の、自分自身の製品モデルに対応して一意に決められ
ているビットフラグを調べることにより、このプログラ
ムカートリッジが、本プリンタで利用できるか否かを判
断できる。
 7 特に、該製品適合フラグ253は、独立された複数のビ
ットフラグから成り立っているので、複数の製品モデル
に対して、本プログラムカートリッジが使用可能であっ
ても、それぞれ対応した該ビットフラグを同時に立てる
ことで、兼用して使うことが可能となる。
一方、プリンタ本体側に識別子として、プログラム10
202が設けられ、プリンタに一意に名をつけている。
これにより、プログラムカートリッジ側のカートリッジ
プログラムは、このプログラムID202を調べること
で、本カートリッジが、装着された本体とマツチするも
のか否かを調べることができる。特に、ハードウェア構
成が全く同じで、本体プログラムをある特殊用途に限っ
た目的で作った用途限定型のプリンタなどに対して、汎
用プログラムカートリッジの使用を防ぐためにも、上記
検知手段は利用できる。また、本実施例ではプログラム
カートリッジが、本体に適合しなければ、状態表示器に
その旨を表示して、操作者に警告している。
 8 犬」U性l 上記実施例においては、本体プログラムからカートリッ
ジプログラムへ切替える際のジャンプ先を、相対番地α
。に固定していたが、これに限らず、例えば、カートリ
ッジ識別領域からの相対位置を固定し、その領域に、カ
ートリッジプログラムのスータート先を記憶させること
も可能である。
これによって、1つの制御プログラム格納媒体上に、複
数の制御プログラムを格納し、カートリッジ識別領域の
カートリッジ識別コードをサーチすることによって、そ
れぞれの制御プログラムへの切替が可能となる。
また、第1の実施例では、制御プログラムの切替要求を
操作パネル上のスイッチにて行なっていたが、これに限
らず、ホストコンピュータからのコマンドで行なっても
よい。さらに、切替要求は単に本体プログラムかプログ
ラムカートリッジ0か1かの切替要求であったが、プロ
グラムIDやカートリッジIDコードを利用して、−意
名で切替プログラムを指示することも可能である。
第1の実施例においては、外部からの切替要求をスイッ
チで検知したものであったが、これに限らず、例えば、
装置内に各ユニットの異常検知手段を有し、あるユニッ
トに異常が検知された場合、制御手段を切替るといった
、内部的な切替要求に対しても、適用できる。
第1の実施例では、制御手段としてCPUに制御情報を
与える制御プログラムを用いたが、これに限らず、電気
的な制御回路を用いてもよい。この場合、切替制御はプ
ログラムの制御の流れに対して、電気的な信号を用いる
ことになる。
見立廻ユ 第1の実施例では、ページバッファの残留データの有無
を制御プログラム切替可能条件としてその検知手段を設
けた訳であるが、本発明はこれに限らず、例えば、受信
バッファ上のデータの有無を制御プログラム切替可能条
件とすることもできる。
この場合、複数ページの連続して送信されたデータが、
制御プログラムの切替で分断されるのを防ぐことができ
る。
また、制御プログラム切替可能条件は残留データのチエ
ツクに限らず、例えば、印刷装置上の紙搬送状態をチエ
ツクし、用紙が完全に排紙してから切替を許可する形態
にしてもよい。これによって、切替によって走り始める
新しい制御プログラムが初期化のため印刷装置の全動作
を一時停止させても、直前に印刷した用紙が損なわれず
に済むことになる。
実】1肌丘 第1の実施例では、データ源への切替報知手段としてデ
ータの切取りのためのプロトコル用ビイジー信号、すな
わちデータの送信停止要求信号を用いたが、本発明はこ
れに限らず、独立した専用報知信号をデータ源と本装置
の間に設けて、切替手段の行使をデータ源に知らせても
よい。
この場合、データ源は制御プログラムが切替られたこと
を一義に検知できるため、制御プログラムに依存するデ
ータファイルの交換やプリンタド1 ライバの交換などが操作者へ指示できる。特に、該報知
信号がコード情報を扱えるようにした場合、印刷装置側
は切替えられた制御プログラムをその制御プログラムに
一意に名付られた識別名で知らせることができ、データ
源側のプリンタドライバやデータファイルの交換の自動
化が可能となる。
また、印刷装置からの切替行使、報知手段に対応する応
答手段を設けることにより、制御プログラムの切替が生
じてデータ源に通報された場合、データ源は現在−群の
データの送信途中か否かを判断して、送信途中の場合に
は制御プログラム切替、拒否の応答を印刷装置に伝え、
−群の印刷が途中で中断するのを避けることが可能とな
る。
裏族盟1 第1の実施例では、ハードウェア構成や本体プログラム
側の外部参照ルーチン群が同一であれば、本体プログラ
ム自身が異なる各種製品モデルに対して、プログラムカ
ートリッジは製品適合フラグの対応ビットを全て立てる
ことで、共用化を 2 実現していた。さらにこれを進めて、ハードウェア構成
や外部参照ルーチン群が異なるものであっても、プログ
ラムカートリッジ上のプログラムが、本体側のプログラ
ムID等の識別子を調べて、それぞれのハードウェア構
成、外部参照ルーチンの供給状態に合わせて、複数の制
御に制御プログラムを分岐させてもよい。これによって
、製品モデル群に対してのプログラムカートリッジの共
用範囲を広げることができる。
〔発明の効果〕
本発明を実施することにより、以下に述べる効果を得る
ことができる。
■着脱可能な複数の制御プログラム格納媒体を用意し、
ある制御プログラムから他の制御プログラムへの切替を
可能にしたことにより、種々のプリンタコマンド体系へ
の対応や種々の印刷機能。
ホストコンピュータとの種々のハンドシェイクサポート
が一つの装置内で実現できるようになる。
また、内蔵制御プログラムに問題が発見された場合であ
っても、修正したプログラムを制御カートリッジなどの
着脱可能な媒体で供給することにより、対策が容易にな
る。
さらに、独立した制御の受入手段を有することにより、
制御プログラムの変更に対しても、複数の制御プログラ
ム間の切替に対し、その互換性が保たれる。
■複数の制御プログラムの切替処理において、印刷装置
がプログラム切替可能な状態にあるか否かを検知し、切
替不可能な要因があれば切替を中止することで、データ
の消失や、装置の障害発生を防ぐことができる。
■制御プログラムの切替実行の直前にデータ供給源側に
切替実行を知らせることにより、データ供給源からの送
信データが損なわれるのを防ぐことが可能となる。
■現在勤作している制御プログラムが、別途装着された
着脱可能な格納媒体に記憶されたプログラムの識別信号
を判別することにより、適合する制御プログラムのみに
動作を許可することが可能となる。
特に、着脱可能な格納媒体のプログラムに、装置適合判
断のための独立した複数の識別記号をもたすことによっ
て、現在または将来にわたっての装置適合判別を行なう
ことができ、さらに装置間での制御プログラムの共用化
が危険な(行なえる。
【図面の簡単な説明】
第1図は本発明を適用した一実施例における制御部を示
すブロック図、 第2図はROMへの制御プログラムの格納形式を示す図
、 第3図は第2図上に示したカートリッジ識別領域の説明
図、 第4図は第2図に示した製品適合フラグの説明図、 第5図はRAMのデータ構造図、 第6図は第5図に示した保存領域の説明図、5 第7図はNVRAMのデータ構造図、 第8図はCPUのアドレス空間を示す図、第9図は操作
パネルの配置図、 第10図、第11図、第12図は本体プログラムのフロ
ーチャート、 第13図、第14図はカートリッジプログラムのフロー
チャート、 第15図は本発明を適用したレーザビームプリンタの外
観図である。 ・・・制御部、 ・・・CPU 。 ・・・ホストコンピュータ、 ・・・入力インタフェース回路、 ・・・ROM 。 ・・・RAM、 ・・・NVRAM、 ・・・増設RAMカード、 ・・・カートリッジインタフェース回路、・・・プログ
ラムカートリッジO1 6 ・・・プログラムカートリッジ1、 ・・・パネルインタフェース回路、 ・・・操作パネル、 ・・・画像発生器、 ・・・出力インタフェース回路、 ・・・印刷機構部、 ・・プログラム10、 ・・・本体プログラム再スタートアドレス格納領域、 251・・・カートリッジ識別領域、 253・・・製品適合フラグ。 特開平 3 293172 (17) 第4図

Claims (1)

  1. 【特許請求の範囲】 1)制御プログラムに従って所定の印刷機能を実行する
    印刷装置において、 制御プログラムを記憶してある格納媒体を着脱自在に装
    着するための装着手段と、 印刷装置本体に内蔵されている制御プログラムおよび前
    記格納媒体に記憶されている制御プログラムのうちのい
    ずれかを選択するための指示手段と、 前記指示手段による制御プログラムの切替要求に応答し
    、プログラムスタートアドレスの設定領域から当該内容
    を読み出す切替制御手段と を具備したことを特徴とする印刷装置。 2)前記プログラムスタートアドレスは間接番地で表わ
    されていることを特徴とする請求項1に記載の印刷装置
    。 3)前記切替制御手段は、前記切替要求が出力された際
    に特定バッファ領域上のデータの有無を調べ、該データ
    が存在する場合には当該切替要求を拒否することを特徴
    とする請求項1に記載の印刷装置。 4)前記切替手段は、前記切替要求が出力された際に、
    データ供給源からのデータ入力を停止させることを特徴
    とする請求項1に記載の印刷装置。 5)前記切替制御手段は、前記切替要求が出力された際
    に、データ入力のためのインターフェース上の信号線を
    オン状態とし、当該切替処理が終了した時点でオフ状態
    とすることを特徴とする請求項1に記載の印刷装置。 6)制御プログラムに従って所定の印刷機能を実行する
    印刷装置において、 制御プログラムを記憶してある格納媒体を着脱自在に装
    着するための装着手段と、 印刷装置本体に内蔵されている制御プログラムと前記格
    納媒体に記憶されている制御プログラムのうちのいずれ
    かを選択するための指示手段と、 前記指示手段による制御プログラムの切替要求に応答し
    、プログラムスタートアドレスの設定領域から当該内容
    を読み出す切替制御手段と、前記装着手段に装着された
    格納媒体の制御プログラムが印刷装置本体に適合するか
    否かを判別する判別手段と を具備したことを特徴とする印刷装置。 7)前記判別手段は、個々の制御プログラムに対応して
    記憶されている識別情報に基づいて適合性を判別するこ
    とを特徴とする請求項6に記載の印刷装置。
JP2095110A 1990-04-12 1990-04-12 出力装置 Expired - Fee Related JP2997005B2 (ja)

Priority Applications (10)

Application Number Priority Date Filing Date Title
JP2095110A JP2997005B2 (ja) 1990-04-12 1990-04-12 出力装置
EP91303175A EP0452115B1 (en) 1990-04-12 1991-04-10 Information output apparatus with switchable program
DE69131914T DE69131914T2 (de) 1990-04-12 1991-04-10 Informationsverarbeitungsgerät mit umschaltbarem Programm
EP98202979A EP0881593B1 (en) 1990-04-12 1991-04-10 Information processing apparatus with switchable program
DE69126677T DE69126677T2 (de) 1990-04-12 1991-04-10 Informationsausgabegerät mit umschaltbarem Programm
EP95202543A EP0689158B1 (en) 1990-04-12 1991-04-10 Information processing apparatus with switchable program
DE69133428T DE69133428T2 (de) 1990-04-12 1991-04-10 Informationsverarbeitungsgerät mit umschaltbarem Programm
US08/280,588 US5878275A (en) 1990-04-12 1994-07-26 Information processing apparatus which discriminates whether or not input information is stored in memory and controlling the switching from a first control program to a second control program
US09/184,059 US6154795A (en) 1990-04-12 1998-11-02 System for switching from control program stored in an output apparatus to control program stored in detachable memory based on discriminated feeding status of recording medium
US09/690,088 US6397271B1 (en) 1990-04-12 2000-10-17 System for switching from a first control program to a second control program based on discriminated transport status of recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2095110A JP2997005B2 (ja) 1990-04-12 1990-04-12 出力装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP15283399A Division JP3181894B2 (ja) 1999-05-31 1999-05-31 出力装置

Publications (2)

Publication Number Publication Date
JPH03293172A true JPH03293172A (ja) 1991-12-24
JP2997005B2 JP2997005B2 (ja) 2000-01-11

Family

ID=14128718

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2095110A Expired - Fee Related JP2997005B2 (ja) 1990-04-12 1990-04-12 出力装置

Country Status (4)

Country Link
US (3) US5878275A (ja)
EP (3) EP0452115B1 (ja)
JP (1) JP2997005B2 (ja)
DE (3) DE69126677T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04294183A (ja) * 1991-03-25 1992-10-19 Tohoku Ricoh Co Ltd プログラム組込型機器

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03288926A (ja) * 1990-04-05 1991-12-19 Canon Inc 画像出力装置
JP2997005B2 (ja) * 1990-04-12 2000-01-11 キヤノン株式会社 出力装置
JP2839119B2 (ja) * 1992-05-18 1998-12-16 キヤノン株式会社 文字処理装置及び方法
US5337258A (en) * 1992-07-10 1994-08-09 Microsoft Corporation Cost metrics
US5469533A (en) * 1992-07-10 1995-11-21 Microsoft Corporation Resource-oriented printer system and method of operation
US5471564A (en) * 1992-07-10 1995-11-28 Microsoft Corporation System and method for dynamic printer timeout
US5471563A (en) * 1992-07-10 1995-11-28 Microsoft Corporation System and method for automatic resolution reduction
US5467435A (en) * 1992-07-10 1995-11-14 Microsoft Corporation System and method for mode switching
US5469532A (en) * 1992-11-16 1995-11-21 Microsoft Corporation System and method for font wrapping printer data
JP3266685B2 (ja) * 1993-02-17 2002-03-18 ブラザー工業株式会社 プリンタ
FI102495B (fi) * 1994-03-16 1998-12-15 Nokia Mobile Phones Ltd Luku/tulostuslaite
US6633405B1 (en) 1999-12-17 2003-10-14 Hewlett-Packard Development Company, L.P. Method and apparatus for interfacing generic and device-specific control codes
US20030043396A1 (en) * 2001-08-29 2003-03-06 Klosterman Elliot L. Printer driver access interface
US20030132293A1 (en) * 2002-01-11 2003-07-17 Hand Held Products, Inc. Transaction terminal including raised surface peripheral to touch screen
KR100667822B1 (ko) * 2005-10-10 2007-01-11 삼성전자주식회사 낸드 플래시 메모리를 이용한 화상형성장치의 초기화제어장치 및 방법
US8571882B1 (en) * 2006-07-05 2013-10-29 Ronald J. Teitelbaum Peer to peer database
US20140069862A1 (en) * 2011-11-04 2014-03-13 Ppg Industries Ohio, Inc. Coated microporous materials having filtration and adsorption properties and their use in fluid purification processes
US20130228529A1 (en) * 2011-11-04 2013-09-05 Ppg Industries Ohio, Inc. Microporous material having filtration and adsorption properties and their use in fluid purification processes
US20130228519A1 (en) * 2011-11-04 2013-09-05 Ppg Industries Ohio, Inc. Microporous material having filtration and adsorption properties and their use in fluid purification processes

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5479042A (en) * 1977-12-06 1979-06-23 Canon Inc Image forming device
JPS59136861A (ja) * 1983-01-27 1984-08-06 Canon Inc 電子機器
JPS59140666A (ja) * 1983-01-31 1984-08-13 Victor Co Of Japan Ltd 回転記録媒体再生装置
JPS607532A (ja) * 1983-06-27 1985-01-16 Canon Inc 情報処理装置
US4620231A (en) * 1984-06-18 1986-10-28 Rca Corporation CCD imager with photodetector bias introduced via the CCD register
FR2566327B1 (fr) * 1984-06-25 1989-06-02 Epson Corp Imprimante
JPS6120768A (ja) * 1984-07-09 1986-01-29 Canon Inc プリンタの書体選択装置
ATE40078T1 (de) * 1984-11-14 1989-02-15 Mannesmann Tally Gmbh Drucker, insbesondere matrixdrucker.
US4742483A (en) * 1985-05-14 1988-05-03 Minolta Camera Company, Ltd. Laser printer maintenance system
JPS6219904A (ja) * 1985-07-18 1987-01-28 Diesel Kiki Co Ltd マイクロプロセツサを用いた制御装置
US4811052A (en) * 1985-08-08 1989-03-07 Canon Kabushiki Kaisha Control device for control of multi-function control units in an image processing apparatus
US4745572A (en) * 1985-11-04 1988-05-17 Step Engineering Software editing instrument
JPS62117032A (ja) * 1985-11-18 1987-05-28 Canon Inc 電子タイプライタシステム
US4825404A (en) * 1985-11-27 1989-04-25 Tektronix, Inc. Interface system which generates configuration control signal and duplex control signal for automatically determining the configuration of removable modules
US4949301A (en) * 1986-03-06 1990-08-14 Advanced Micro Devices, Inc. Improved pointer FIFO controller for converting a standard RAM into a simulated dual FIFO by controlling the RAM's address inputs
US5270805A (en) * 1986-05-16 1993-12-14 Canon Kabushiki Kaisha Data communication apparatus for converting data in accordance with a discriminated function of a destination station
US4878123A (en) * 1986-05-23 1989-10-31 Canon Kabushiki Kaisha Image processing apparatus having image memory
JPS6390263A (ja) * 1986-10-02 1988-04-21 Canon Inc パ−ソナルコンピユ−タ
JPH0737155B2 (ja) * 1986-10-07 1995-04-26 シチズン時計株式会社 プリンタ
JPH0786829B2 (ja) * 1987-07-31 1995-09-20 株式会社東芝 電子機器装置
JPH01118454A (ja) * 1987-10-30 1989-05-10 Brother Ind Ltd 印字装置
DE3744263A1 (de) * 1987-12-24 1989-07-13 Olympia Aeg Zeichengenerator fuer eine druckvorrichtung mit einem matrixdruckkopf
JP3004274B2 (ja) * 1988-02-17 2000-01-31 キヤノン株式会社 出力制御装置
US4951248A (en) * 1988-03-04 1990-08-21 Sun Microsystems, Inc. Self configuring memory system
JP2738696B2 (ja) * 1988-03-24 1998-04-08 キヤノン株式会社 印字制御装置
US5042003A (en) * 1988-07-06 1991-08-20 Zenith Data Systems Corporation Memory usage system
US4905200A (en) * 1988-08-29 1990-02-27 Ford Motor Company Apparatus and method for correcting microcomputer software errors
US5355489A (en) * 1989-08-25 1994-10-11 International Business Machines Corp. Bios load for a personal computer system having a removable processor card
JP2875842B2 (ja) * 1990-03-19 1999-03-31 株式会社日立製作所 プログラマブルコントローラ
JP2997005B2 (ja) * 1990-04-12 2000-01-11 キヤノン株式会社 出力装置
JPH05181185A (ja) * 1991-07-19 1993-07-23 Nikon Corp 共通制御回路を有するカメラ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04294183A (ja) * 1991-03-25 1992-10-19 Tohoku Ricoh Co Ltd プログラム組込型機器

Also Published As

Publication number Publication date
EP0881593A3 (en) 1999-02-03
DE69131914T2 (de) 2000-06-15
US6154795A (en) 2000-11-28
DE69126677T2 (de) 1997-11-13
DE69133428D1 (de) 2004-12-23
EP0689158A2 (en) 1995-12-27
DE69133428T2 (de) 2005-11-10
EP0452115A3 (en) 1993-01-13
EP0452115B1 (en) 1997-07-02
EP0689158A3 (ja) 1996-01-17
EP0689158B1 (en) 2000-01-12
DE69126677D1 (de) 1997-08-07
EP0881593B1 (en) 2004-11-17
EP0452115A2 (en) 1991-10-16
JP2997005B2 (ja) 2000-01-11
EP0881593A2 (en) 1998-12-02
US6397271B1 (en) 2002-05-28
DE69131914D1 (de) 2000-02-17
US5878275A (en) 1999-03-02

Similar Documents

Publication Publication Date Title
JPH03293172A (ja) 出力装置
JP2743290B2 (ja) 記録装置の制御装置
JPH0784117B2 (ja) 画像記録装置の制御装置
JP3181894B2 (ja) 出力装置
US5930462A (en) Printing apparatus
JP3101288B2 (ja) 印刷装置及び印刷制御装置
JPH068534A (ja) 印刷装置
JP2002120444A (ja) 画像形成装置
US5303335A (en) Image forming apparatus
JPS60182088A (ja) メモリカ−トリツジの検出処理方式
KR20010106522A (ko) 페이지 회전을 이용한 변경가능한 페이지 순서의 소책자인쇄
JPH06166241A (ja) エミュレーション表示機構
JP2792216B2 (ja) プリンタ装置
JP2754630B2 (ja) ページプリンタ制御方式
JPH09146521A (ja) 出力制御装置及び方法
JP2588166B2 (ja) パタ−ン記憶媒体差し換え制御装置
JP2913943B2 (ja) プリンタ制御装置
JP2982007B2 (ja) 表示装置
JPH01281522A (ja) 印字装置
JP2004160919A (ja) 印刷制御装置
JPH0577524A (ja) 印刷装置
JPH02283466A (ja) プリンタ
JPH0257368A (ja) プリンタコントローラー
JPS63155321A (ja) プリンタ装置の状態切換え方式
JPH02243370A (ja) プリンタ

Legal Events

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

Free format text: PAYMENT UNTIL: 20071029

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091029

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees