4. プリンタ定義ファイル (PDF) の保守
「4.プリンタ定義ファイル (PDF) の保守(EDTF)」は IFS: /WINDOWS/PDF の
ストリーム・ファイルを編集します。
プリンタ定義ファイルには PDTファイル(*.PDT)とPDFファイル(*.PDF)があります。
PDFとはPDTのソース・ファイルでありPDFをコンパイルしてPDTを作成します。
しかしWINDOWSライターはPDTとPDFのどちらも理解することができます。
PDT とPDFのどちらを指定しても構いません。
しかしPDFのほうがソース・ファイルという性格上、人が見て理解することが
できます。
ここでは /WINDOWS/PDFに保管されたPDFファイルを表示して編集することが
できます。
ファイル編集 (EDTF)
選択項目を入力して,実行キーを押してください。
ストリーム・ファイル,または > '/WINDOWS/PDF'
データベース・ファイル . . . . 名前
ライブラリー . . . . . . . . . . . *LIBL 名前 , *LIBL, *CURLIB
[解説]
最初にEDYFを起動して/WINDOWS/PDFフォルダーを開きます。
EDTF とは i5/OSで提供されているIBMのコマンドです。
ディレクトリー: /WINDOWS/PDF
位置指定 : レコード: 1 OF 13
新 ファイル :
2= 編集 4=ファイル 削除 5= 表示 6=パス・サイズ 9= 反復削除
OPT 名前 サイズ 所有者 変更 使用 CCSID または記号リンク
EPSON.PDF 32K QTR 19/08/03 16:06 19/10/08 10:58 CCSID = 819
ESC_P.PDF 16K QTR 19/08/03 16:06 19/10/08 10:58 CCSID = 819
HPPCL5.PDF 32K QTR 19/08/03 16:09 19/10/08 10:58 CCSID = 819
IBMPPDS.PDF 32K QTR 19/08/03 16:11 19/09/06 08:42 CCSID = 819
IBM5577.PDF 16K QTR 19/08/03 16:10 19/11/01 13:32 CCSID = 819
BASIC_ASCII.PDF 16K QTR 19/08/03 16:33 19/10/02 11:11 CCSID = 819
IBM5585.PDF 16K QTR 19/08/03 16:10 19/10/07 11:47 CCSID = 819
IBM5587.PDF 16K QTR 19/08/03 16:11 19/09/06 08:36 CCSID = 819
LIPS3A4.PDF 16K QTR 19/09/20 10:26 19/10/08 10:57 CCSID = 943
LIPS3B4.PDF 16K QTR 19/08/03 16:13 19/09/02 10:45 CCSID = 943
NPPAGES.PDF 16K QTR 19/08/03 16:13 19/11/01 09:53 CCSID = 819
PAGES.PDF 16K QTR 19/08/03 15:55 19/11/01 09:56 CCSID = 943
LIPSA4YOKO.PDF 16K QTR 19/09/20 10:28 19/10/02 11:11 CCSID = 819
[解説]
/WINDOWS/PDFのPDFファイルの一覧が表示されて選択することができます。
サンプルとして IBM5577.PDF(赤字)を「2=編集」で開いてみます。
編集 ファイル /WINDOWS/PDF/IBM5577.PDF
レコード: 1 OF 132 BY 10 桁 : 1 72 BY 126
制御 :
CMD ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8...
************* データの始め ****************
/**********************************************************************/
/* PDF FILE (PRINTER DEFINITION FILE) FOR: PS/55 Pネケトホオネ */
/**********************************************************************/
BEGIN_MACROS
NUL EQU 00
BEL EQU 07
BAK EQU 08
TAB EQU 09
LFF EQU 0A
VTB EQU 0B
FFF EQU 0C
CRR EQU 0D
;
;
END_MACROS
/**********************************************************************/
/* Session Parameters */
/**********************************************************************/
MAXIMUM_PAGE_LENGTH=066
MAXIMUM_PRINT_POSITION=132
DEFAULT_CPI?=010
DEFAULT_LPI?=006
:
:
/**********************************************************************/
/* Control Codes */
/**********************************************************************/
START_JOB=INZ SEL LL6 P10
END_JOB=INZ
BACKSPACE=BAK
BEL=BEL
CARRIAGE_RETURN=CRR
NEW_LINE=CRR LFF
LINE_FEED=LFF
FORM_FEED=EJC
:
:
/**********************************************************************/
/* Highlight Specifications */
/**********************************************************************/
START_HIGHLIGHT_INTENSE=ESC 7E 0E 00 01 17
:
/**********************************************************************/
/* Highlight Specifications */
/**********************************************************************/
START_HIGHLIGHT_INTENSE=ESC 7E 0E 00 01 17
END_HIGHLIGHT_INTENSE=ESC 7E 0E 00 01 18
START_HIGHLIGHT_UNDERLINE=1B 7E 11 00 01 01
END_HIGHLIGHT_UNDERLINE=1B 7E 11 00 01 00
/**********************************************************************/
/* Internal Data Area. */
/* Do not change these statement. */
/**********************************************************************/
TOP_MARGIN=
LEFT_MARGIN=
DYNAMIC_START_JOB=00 00 00 00 00 00 00 00 00 00 00
:
:
[解説]
PDFがどのような構造として定義されているか簡単に説明します。
最初にマクロが定義されています。
BEGIN_MACROS~END_MACROSのあいだにマクロが定義されています。
マクロとは
HEX(バイナリー)を人が読んで理解できる語句にまとめたもので
それ自体は命令ではありません。
例えば
LFF EQU 0A
というマクロ定義がありますがこれは
LFF = 0x0a という意味であり
LFFというマクロは
0x0a を表すという意味です。
SPL EQU 1B 7E 04 00 03 00
のように SPL = 0x1b 0x7e 0x04 0x00 0x03 0x00 のように複数のHEXである場合も
あります。
ところで 制御コード(
Control Codes)の中には
NEW_LINE=CRR LFF
という表現があります。
これは
NEW_LINE つまり新しい行替は
CRR というマクロと
LFF というマクロを
組み合わせて使うという意味です。
つまり
NEW_LINE = CRR + LFF = 0x0d 0x0a
ということです。
NEW_LINEとは
ASCIIでの改行コードです。
さらに
START_JOB=INZ SEL LL6 P10 や
END_JOB=INZ
という制御コードも定義されています。
これはジョブの最初のときだけ
START_JOB=INZ SEL LL6 P10 = (EQU 1B 7E 01 00 00) + (11) + (7E 03 00 01 3C) +
(1B 7E 02 00 01 32)
を実行しなさい、という命令です。
このように定義されているPDFをコンパイルして
PDTが生成されます。
PDTは
PDFがバイナリで表現されたものです。
SCS印刷ストリームの制御コードと
PDT制御の定義とは必ずしも1対1に対応していません。
SCSにある命令が
PDTにはない場合もあります。
それし各プリンタ・メーカーによって異なります。
PDFはソース・ファイルであるので人が見てわかる記述もあります。
MAXIMUM_PAGE_LENGTH=066
MAXIMUM_PRINT_POSITION=132
DEFAULT_CPI?=010
DEFAULT_LPI?=006
:
KANJI_CODE?=SHIFT_JIS
:
PAGE_LENGTH_TYPE?=6INCH
:
のような記述はわかりやすく修正も容易です。
ただし
PDFの修正は十分な知識と経験の元に行ってください。
文法的に正しいものであれば正常な動作を期待できますが
㈱オフィスクアトロでは、ユーザーの修正に製品側の機能として
対応することはできませんし障害が発生したときの調査もできません。