ESC 3 n (最小紙送りピッチ単位の改行量設定)
2.2.6 ステータスコマンド
①プリンターステータス( n=1 指定時 )
ビット ステータス 16 進数 10 進数
0 固定 00 0
1 固定 02 2
2 固定 04 4
オンラインの状態 00 0
3 オフラインの状態 08 8
4 固定 10 16
オンライン復帰待ちでない 00 0
5 オンライン復帰待ち中 20 32
FEED スイッチが押されてない 00 0
6 FEED スイッチが押されている 40 64
7 固定 00 0
②オフライン要因ステータス( n=2 指定時 )
ビット ステータス 16 進数 10 進数
0 未使用 00 0
1 未使用 02 2
カバーが閉じている 00 0
2 カバーが開いている 04 4
FEED スイッチによる紙送り中でない 00 0
3 FEED スイッチによる紙送り中である 08 8
4 未使用 10 16
紙なしによる印字停止なし 00 0
5 紙なしによる印字停止中 20 32
エラー発生なし 00 0
6 エラー発生あり 40 64
7 未使用 00 0
ビット 5:ペーパーエンド検出器が紙なしのとき、または<ESC c 4>によりペーパーニアーエンドで停 止としている場合にニアエンド状態になった時は、印字を停止する。このときビット 5=1 と なる。
③エラー要因ステータス( n=3 指定時 )
ビット ステータス 16 進数 10 進数
0 固定 00 0
1 固定 02 2
2 固定 00 0
3 固定 00 0
4 固定 10 16
復帰不可能エラー発生なし 00 0
5 復帰不可能エラー発生あり 20 32
自動復帰エラー発生なし 00 0
6 自動復帰エラー発生あり 40 64
7 固定 00 0
ビット 6:ヘッドの異常高温を検出し、ヘッド温度が下がるまで印字停止している間はビット 6=1 と なる。
④連続用紙検出器ステータス( n=4 指定時 )
ビット ステータス 16 進数 10 進数
0 固定 00 0
1 〃 02 02
ペーパーニアーエンド検出器用紙あり 00 0
2 ペーパーニアーエンド検出器用紙なし 04 4
ペーパーニアーエンド検出器用紙あり 00 0
3 ペーパーニアーエンド検出器用紙なし 08 8
4 固定 10 16
ペーパーエンド検出器に用紙あり 00 0
5 ペーパーエンド検出器に用紙なし 20 32
ペーパーエンド検出器に用紙あり 00 0
6
ESC v (MSW3-7 CBM-270 互換モード:有効時、シリアルI/F選択時)
【名 称】 プリンターステータスの送信
【コード】 <1D>H<76>H
【機 能】 現時点におけるプリンターステータスを送信します。
【注意事項】 ・送信するステータスは1バイトで、その内容は下表によります。
・DTR/DSR 制御の場合、ホストが受信可能(DSR 信号がスペース状態)であることを確認後 1 バイトだ け送信します。また、XON/XOFF 制御の場合、DSR 信号の状態を確認せず 1 バイトだけ送信します。
・DTR/DSR の場合、ホストが受信不可能(DSR 信号がマーク状態)な場合は、受信可能になるまで待 ち続けます。
・このコマンドはシリアルインターフェースの場合のみ有効です。
ビット 機 能 値
0 1
0 ペーパーニアーエンド 紙有り 紙無し
1 未定義 ―― ――
2 ペーパーエンド 紙有り 紙無し
3 未定義 ――
―
4 未使用 固定 ――
5 未定義 ―― ――
6 未定義 ―― ――
7 未定義 ―― ――
ビット2:ペーパーエンド状態の場合、本プリンターは必ずオフラインとなるので、このコマンド を実行しない。したがって、ステータス「紙無し(04H)」を送信することはない。
【プログラム例】
OPEN "COM1:N81NN" AS #1 → OPEN 文は BASIC の種類により異なります。
PRINT #1, CHR$(&H1B);"v";
A$ = INPUT$(1,#1) CLOSE #1
GS a n
【名 称】 自動ステータス送信の有効・無効
【コード】 <1D>H<61>H<n>
【定義域】 0≦n≦255
【機 能】 自動ステータス送信(ASB:Automatic Status Back)の対象となるステータスを選択する。
ビット ASB の対象となるステータス 16 進数 10 進数
0 未定義 - -
オンライン/オフラインの状態=無効 00 0
1 オンライン/オフラインの状態=有効 02 2
エラー状態=無効 00 0
2 エラー状態=有効 04 4
連読用紙検出器=無効 00 0
3 連読用紙検出器=有効 08 8
4 未定義 - -
5 未定義 - -
6 未定義 - -
7 未定義 - -
【注意事項】 ・どれか 1 つでもステータスが有効となった場合には、このコマンド実行時のステータスを送信する。以降は 有効となっているステータスの状態が変化する度にステータス送信を行う。このとき、各ステータスは現在 の状態を表すので ASB が有効となっていないステータスでも状態が変化する可能性がある。
・全てのステータスが無効であった場合、自動ステータス送信機能(ASB 機能)は無効となる。
・初期状態で ASB 機能が有効となっている場合、電源投入後に初めて通信可能となった時のステータ スを送信する。
・ホストの受信可否状態を確認せずに下記に示す 4 バイトのステータスを送信する。4 バイトのステータス は XOFF コードを除き必ず連続する。
①第 1 バイト(プリンター情報)
ビット ステータス 16 進数 10 進数
0 未使用 00 0
1 未使用 00 0
2 未使用 00 0
オンラインの状態 00 0
3
オフラインの状態 08 8
4 未使用 01 16
カバーが閉じている 00 0
5
カバーが開いている 20 32
FEED スイッチによる紙送り中でない 00 0
6
FEED スイッチによる紙送り中 40 64
7 未使用 00 0
②第 2 バイト(エラー発生情報)
ビット ステータス 16 進数 10 進数
0 未定義 - -
1 未定義 - -
2 未使用 00 0
3 未使用 00 0
4 未使用 00 0
復帰不可能エラー発生なし 00 0
5
復帰不可能エラー発生 20 32
6 自動復帰エラー発生なし 00 0
自動復帰エラー発生 40 64
7 未使用 00 0
③第 3 バイト(用紙検出器情報)
ビット ステータス 16 進数 10 進数
ペーパーニアーエンド検出器に用紙あり 00 0
0,1 ペーパーニアーエンド検出器に用紙なし 03 3
ペーパーエンド検出器に用紙あり 00 0
2,3 ペーパーエンド検出器に用紙なし 0C 12
4 未使用 00 0
5 未定義 - -
6 未定義 - -
7 未使用 00 0
④第 4 バイト(用紙検出器情報)※MSW3-7 ON(CBM-270 互換モード有効)の場合
ビット ステータス 16 進数 10 進数
0 未定義 - -
1 未定義 - -
2 未定義 - -
3 未定義 - -
4 未使用 00 0
5 未定義 - -
6 未定義 - -
7 未使用 00 0
④第 4 バイト(用紙検出器情報)※MSW3-7 OFF(CBM-270 互換モード無効)の場合
ビット ステータス 16 進数 10 進数
0 予 約 01 1
1 予 約 02 2
2 予 約 04 4
3 予 約 08 8
4 固 定 00 0
5 予 約 00 00
6 予 約 00 00
7 固 定 00 0
【初期値】 MSW1-3 OFF の時 n=0 MSW1-3 ON の時 n=2
【参 照】 DLE EOT、GS r
GS r n
【名 称】 ステータスの送信
【コード】 <1D>H<72>H<n>
【定義域】 n=1,49
【機 能】 用紙検出器ステータスを送信する。
【注意事項】 ・シリアルインターフェース使用時
DTR/DSR 制御の場合 → ホストが受信可能であることを確認後にステータスを送信する。
ホストが受信不可能な場合は、受信可能となるまで待ち続ける。
XON/XOFF 制御の場合 → ホストの受信可否状態を確認せずにステータスを送信する。
・このコマンドは受信バッファー展開時に実行するため、受信バッファーの状態によりコマンド受信とステータ ス送信の間に遅延を生じる可能性がある。
・<GS a>による ASB が有効の場合、このコマンドによるステータスと ASB のステータスを識別する必要が ある。
・用紙検出器ステータス(n = 1、49)
ビット ステータス 16 進数 10 進数
ペーパーニアーエンド検出器に用紙あり 00 0
0,1 ペーパーニアーエンド検出器に用紙なし 03 3
ペーパーエンド検出器に用紙あり 00 0
2,3 ペーパーエンド検出器に用紙なし (0C) (12)
4 未使用 00 0
5 未定義 - -
6 未定義 - -
7 未使用 00 0
ビット 2、3:ペーパーエンド検出器が紙なしの場合、本プリンターは必ずオフラインとなるのでこのコ マンドを実行しない。したがって、ステータス「ペーパーエンド検出器に紙なし(0CH)」を 送信することはない。
【参 照】 付録 4.3 送信ステータスの識別 DLE EOT、GS a