Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ lp(4) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

lpr(1)

LP(4)  —  NEWS-OS Programmer’s Manual

名称

lp − ラインプリンタ

形式

device lp0 at iop0 priority 104
device lp0 at hb0 priority 104
device lp0 at ap0 priority 104

解説

lp は、標準セントロニクスインターフェースに対応した プリンタへのインターフェースです。 NWS-3100/NWS-5000 シリーズでは、入力もサポートしています。 NWS-3100/NWS-5000 シリーズの場合、デバイスの入出力は read/write システム コールを発行した時点で切り替わります。 入力時には、指定したバイト数が読み出されるまで、 read システムコールから戻りません。
NWS-3100/NWS-5000 シリーズの出力時のハンドシェークには、以下の二つのモードがあります。

標準出力モード
高速出力モード(NWP-549 用)

デフォルトでは、標準出力モードで動作します。 エスケープシーケンスやデフォルトのページ幅等の設定は、 接続されているプリンタの仕様によって決まります。

ioctl システムコール

LPIOCSTATUS
プリンタのステータス情報を問い合わせます。
プリンタがレディ状態であれば 1 が、 レディ状態でなければ 0 が status に代入されます。 NWS-3100/NWS-5000 シリーズの場合

#include <sys/ioctl.h>
#include <newsapbus/printer.h>
int status;
ioctl(fd, LPIOCSTATUS, &status);
NWS-3100/NWS-5000 シリーズ以外の場合

#include <sys/ioctl.h>
#include <newsiop/printer.h>
int status;
ioctl(fd, LPIOCSTATUS, &status);

LPIOCFLUSH
プリンタ用のバッファの中のデータを捨てます。 NWS-3100/NWS-5000 シリーズの場合

#include <sys/ioctl.h>
#include <newsapbus/printer.h>
ioctl(fd, LPIOCFLUSH, 0);
NWS-3100/NWS-5000 シリーズ以外の場合

#include <sys/ioctl.h>
#include <newsiop/printer.h>
ioctl(fd, LPIOCFLUSH, 0);

LPIOCSETMODE
NWS-3100/NWS-5000 シリーズの出力時のハンドシェークのモードを切り替えます。

標準出力モードLPSLOWMODE(0) (デフォルト)
高速出力モードLPFASTMODE(1)
 #include <sys/ioctl.h>
#include <newsapbus/printer.h>
int mode;
mode = LPFASTMODE;
ioctl(fd, LPIOCSETMODE, &mode);

LPIOCGETMODE
NWS-3100/NWS-5000 シリーズの出力時のハンドシェークのモードを問い合わせます。

#include <sys/ioctl.h>
#include <newsapbus/printer.h>
int mode;
ioctl(fd, LPIOCGETMODE, &mode);

注意事項

競合する read/write システムコールを発行してはいけません。

関連ファイル

/dev/lp0

関連事項

lpr(1)

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026