HTBasic/Rocky Mountain BASIC Windows XP 中的彩色打印
Printing in Color in HTBasic/Rocky Mountain BASIC in Windows XP
谁能帮我理解这段 "Rocky Mountain BASIC" 或 "HTBasic" 代码?
我必须找出打印功能不再起作用的原因。
首先,这一行
PRINTER IS 26
我知道我们要使用的打印机是“26”,但是 26 是什么意思?
REPEAT
IF LWC$(Imp$)="o" THEN
PRINTER IS 26
FOR I=0 TO VAL(Mesu$(0,5))
FOR L=0 TO 6
PRINT Mesu$(I,L)
NEXT L
NEXT I
ELSE
FOR L=0 TO 6
PRINT TABXY(2,9+L);Mesu$(0,L)
NEXT L
FOR C=1 TO VAL(Mesu$(0,5))
PRINT TABXY(20-36*(C>3)+(C-1)*12,8+8*(C>3)),"voie "&VAL$(C-1)
FOR L=1 TO 7
PRINT TABXY(20-36*(C>3)+(C-1)*12,L+8+8*(C>3)),Mesu$(C,L-1)
NEXT L
NEXT C
END IF
INPUT "SORTIE sur l'IMPRIMANTE O/N ?",Imp$
UNTIL LWC$(Imp$)="n"
“26”是指定PRINT语句输出端口的代码之一。例如,
PRINTER IS CRT
PRINTER IS PRT
字母代码对应数字代码;例如,PRINTER IS CRT
与 PRINTER IS 1
相同,PRT 与 701 相同。
可能适用于此 BASIC 方言印刷的代码(包括 26)是:
26 701 9 15 19 23 24 25
我从一份古老的文档 Using HP BASIC For Instrument Control: A Self-Study Course 中提取了此内容,您可能会发现它很有用。 (我怀疑您在主题行中指的是 HPBasic,而不是 HTBasic?)
TABXY 是 PRINT 语句的变体,用于打印到 CRT 屏幕上的特定位置;我看到的文档说,如果不打印到 CRT,XY 将被忽略,但如果 TABXY 也适用于某些绘图仪,我不会感到惊讶。前两个数字是开始显示文本的 X 和 Y 坐标,TABXY(1, 1)
表示左上角,右下角取决于 CRT 的列数和行数。
您可能会发现 HP9000 系列 BASIC Language Reference, Volume 1 and BASIC Language Reference, Volume 2 很有用。
LWC$只是一个小写函数,保证无论用户在INPUT行输入“O”、“N”、“o”、“n”,程序都能正确响应。
VAL 将字符串转换为该字符串表示的数字。例如,字符串“3”将变为数字 3。
变量Mesu$很可能是一个二维数组,x从0到第4行判断,变量Mesu$(0, 5)中包含的变量,y从0到6,从第4行判断5.
我猜 PLOTTER 所在的行是 26,我们说我们想要颜色。
MAT Menu$=("")
DISP "envoi à l' imprimante .."
Menu$(1)="PLOTTER"
Menu$(2)="IMPRIMANTE COULEUR"
!Select(0,1,Tp,26,12,1)
IF Tp=1 THEN
PLOTTER IS 705,"HPGL"
ELSE
PLOTTER IS 26,"HPGL;PCL5;COLOR,1600",0,260,0,185
END IF
谁能帮我理解这段 "Rocky Mountain BASIC" 或 "HTBasic" 代码?
我必须找出打印功能不再起作用的原因。
首先,这一行
PRINTER IS 26
我知道我们要使用的打印机是“26”,但是 26 是什么意思?
REPEAT
IF LWC$(Imp$)="o" THEN
PRINTER IS 26
FOR I=0 TO VAL(Mesu$(0,5))
FOR L=0 TO 6
PRINT Mesu$(I,L)
NEXT L
NEXT I
ELSE
FOR L=0 TO 6
PRINT TABXY(2,9+L);Mesu$(0,L)
NEXT L
FOR C=1 TO VAL(Mesu$(0,5))
PRINT TABXY(20-36*(C>3)+(C-1)*12,8+8*(C>3)),"voie "&VAL$(C-1)
FOR L=1 TO 7
PRINT TABXY(20-36*(C>3)+(C-1)*12,L+8+8*(C>3)),Mesu$(C,L-1)
NEXT L
NEXT C
END IF
INPUT "SORTIE sur l'IMPRIMANTE O/N ?",Imp$
UNTIL LWC$(Imp$)="n"
“26”是指定PRINT语句输出端口的代码之一。例如,
PRINTER IS CRT
PRINTER IS PRT
字母代码对应数字代码;例如,PRINTER IS CRT
与 PRINTER IS 1
相同,PRT 与 701 相同。
可能适用于此 BASIC 方言印刷的代码(包括 26)是:
26 701 9 15 19 23 24 25
我从一份古老的文档 Using HP BASIC For Instrument Control: A Self-Study Course 中提取了此内容,您可能会发现它很有用。 (我怀疑您在主题行中指的是 HPBasic,而不是 HTBasic?)
TABXY 是 PRINT 语句的变体,用于打印到 CRT 屏幕上的特定位置;我看到的文档说,如果不打印到 CRT,XY 将被忽略,但如果 TABXY 也适用于某些绘图仪,我不会感到惊讶。前两个数字是开始显示文本的 X 和 Y 坐标,TABXY(1, 1)
表示左上角,右下角取决于 CRT 的列数和行数。
您可能会发现 HP9000 系列 BASIC Language Reference, Volume 1 and BASIC Language Reference, Volume 2 很有用。
LWC$只是一个小写函数,保证无论用户在INPUT行输入“O”、“N”、“o”、“n”,程序都能正确响应。
VAL 将字符串转换为该字符串表示的数字。例如,字符串“3”将变为数字 3。
变量Mesu$很可能是一个二维数组,x从0到第4行判断,变量Mesu$(0, 5)中包含的变量,y从0到6,从第4行判断5.
我猜 PLOTTER 所在的行是 26,我们说我们想要颜色。
MAT Menu$=("")
DISP "envoi à l' imprimante .."
Menu$(1)="PLOTTER"
Menu$(2)="IMPRIMANTE COULEUR"
!Select(0,1,Tp,26,12,1)
IF Tp=1 THEN
PLOTTER IS 705,"HPGL"
ELSE
PLOTTER IS 26,"HPGL;PCL5;COLOR,1600",0,260,0,185
END IF