Discussion:
[Simh] Printer on TOPS-10
Quentin North
2018-03-19 18:27:01 UTC
Permalink
Possibly a silly question, but does anyone know how to get the printer to work on TOPS-10 on simh? I have attached a printer files to the printer device but the printer and the spooler fills up with output on TOPS-10, but the the printer stays offline in TOPS-10 and I cant find out how to get it online.

My startup scripts as follows:
set tim y2k
att rp0 disks/t10.dsk
att lp20 printer.out
set dz 8b
att -am dz 2020
boot rp0

When I get TOPS-10 up and try to print I can’t seem to get it to do anything:

OPR>
18:19:42 -- System Queues Listing --

Printer Queue:
Job Name Req# Limit User
-------- ------ ------- ------------------------
BCPL 3 6 OPR [1,2]
There is 1 job in the queue (none in progress); 6 pages
OPR>show messages
OPR>
18:19:49 --No outstanding messages--
OPR>show status printer
OPR>
18:19:59 -- System Device Status --

Printer Status:
Unit Status
---- ---------------
0 Not Available

OPR>stop printer 0
OPR>
18:20:20 Printer 0 -- Stopped --
OPR>abort printer 0/purge
OPR>
18:20:30 Printer 0 -- Not Active --
OPR>start printer 0
OPR>
18:20:37 Printer 0 -- Already Started --
OPR>show status printer
OPR>
18:20:46 -- System Device Status --

Printer Status:
Unit Status
---- ---------------
0 Stopped

OPR>start printer 0
OPR>
18:20:55 Printer 0 -- Already Started --
Timothe Litt
2018-03-19 18:38:41 UTC
Permalink
I don't think that my advanced printer code was merged into the master fork.

This is what works for me:

set lp20 enable
set lp20 printer=lp07b
attach -S lp20 form=graybar
image=c:\Users\timothe\Documents\GitHub\Run\Form_BG_Grayscale.jpg
c:\Users\timothe\Documents\GitHub\Run\Spool\SAM.lpt.pdf

You probably just need the "set lp20 enable".
Post by Quentin North
Possibly a silly question, but does anyone know how to get the printer
to work on TOPS-10 on simh? I have attached a printer files to the
printer device but the printer and the spooler fills up with output on
TOPS-10, but the the printer stays offline in TOPS-10 and I cant find
out how to get it online.
set tim y2k
att rp0 disks/t10.dsk
att lp20 printer.out
set dz 8b
att -am dz 2020
boot rp0
OPR>  
18:19:42                -- System Queues Listing --
Job Name   Req#    Limit             User
--------  ------  -------  ------------------------
  BCPL         3        6  OPR    [1,2]
There is 1 job in the queue (none in progress); 6 pages
OPR>show messages
OPR>  
18:19:49        --No outstanding messages--
OPR>show status printer
OPR>  
18:19:59                -- System Device Status --
  Unit      Status
  ----  ---------------
     0  Not Available
OPR>stop printer 0
OPR>  
18:20:20        Printer 0  -- Stopped --
OPR>abort printer 0/purge
OPR>  
18:20:30        Printer 0  -- Not Active --
OPR>start printer 0
OPR>  
18:20:37        Printer 0  -- Already Started --
OPR>show status printer
OPR>  
18:20:46                -- System Device Status --
  Unit      Status
  ----  ---------------
     0  Stopped
OPR>start printer 0
OPR>  
18:20:55        Printer 0  -- Already Started --
_______________________________________________
Simh mailing list
http://mailman.trailing-edge.com/mailman/listinfo/simh
Jordi Guillaumes Pons
2018-03-21 11:02:20 UTC
Permalink
Some years ago I wrote a note to myself:

- Enable printing:

1) Create file SYS:LPFORMS:INI with the following content:

NORMAL:ALL/BANNER:01/HEADER:01/LINES:66/WIDTH:132/TRAILER:01

2) In OPR: SHUTDOWN PRINTER 0
3) In OPR: START PRINTER 0/DEVICE:LPT0


I don’t remember what problem I was trying to solve, but right now this file exists and printing works. Hope it can help you.


Jordi Guillaumes i Pons
***@jordi.guillaumes.name
HECnet: BITXOW::JGUILLAUMES
Timothe Litt
2018-03-21 12:19:18 UTC
Permalink
Post by Jordi Guillaumes Pons
NORMAL:ALL/BANNER:01/HEADER:01/LINES:66/WIDTH:132/TRAILER:01
2) In OPR: SHUTDOWN PRINTER 0
3) In OPR: START PRINTER 0/DEVICE:LPT0
I don’t remember what problem I was trying to solve, but right now
this file exists and printing works. Hope it can help you.
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
LPFORM.INI tells LPTSPL how to process forms (the paper stock on which a
job is printed).
The default form is "Normal".  Form names with the same 4 initial
characters use the same stock; no operator intervention is required to
change among them. (This is used to allow specifying soft parameters,
such as the number of banner pages, per job.)  If a job requires
different stock, the operator is notified.

The :ALL is a locator; it specifies which printer(s) the line refers
to.  E.g. LPTnnn, or the reserved words 'LOC' or 'REM'.  The switches
define the job format - BANNER is # of job header pages; HEADER is
number of header pages written before each file.  TRAILER is the job
trailer.  The rest in your example are self-explanatory.  There are more
options; see the operator's guide and operator's command language
reference. for more detail.

I don't believe that LPFORM .INI is required, but it's a good idea to
have one.  Mine contains:

NORMAL/BANNER:1/HEADER:1/TRAILER:1/RAM:LP96/VFU:NORMAL
NARROW/BANNER:1/HEADER:1/TRAILER:1/WIDTH:80/RAM:LP96/VFU:NORMAL
LABELS/BANNER:1/HEADER:1/TRAILER:1/WIDTH:100/RAM:LP64/VFU:LABELS
66LINE/BANNER:1/HEADER:1/TRAILER:1/RAM:LP96/VFU:66LINE

With respect to the START command, /DEVICE is not required when writing
to the default printer.  It's used when you have multiple printers or
want to redirect printer output to some other device - usually a magtape
-- e.g. when producing microform.

With remote (ANF-10) printers, it's qualified by /node

SYS:SYSTEM.CMD usually starts the printer; mine contains these lines
related to the printer:
set printer 0 page-limit 2000
start printer 0

The OP's issue is likely that the printer isn't ENABLEd in SimH.
Jordi Guillaumes Pons
2018-03-21 12:24:24 UTC
Permalink
Jordi Guillaumes i Pons
***@jordi.guillaumes.name
HECnet: BITXOW::JGUILLAUMES
Post by Jordi Guillaumes Pons
NORMAL:ALL/BANNER:01/HEADER:01/LINES:66/WIDTH:132/TRAILER:01
2) In OPR: SHUTDOWN PRINTER 0
3) In OPR: START PRINTER 0/DEVICE:LPT0 <device:LPT0>
I don’t remember what problem I was trying to solve, but right now this file exists and printing works. Hope it can help you.
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
LPFORM.INI tells LPTSPL how to process forms (the paper stock on which a job is printed).
The default form is "Normal". Form names with the same 4 initial characters use the same stock; no operator intervention is required to change among them. (This is used to allow specifying soft parameters, such as the number of banner pages, per job.) If a job requires different stock, the operator is notified.
IIRC the problem was the print spooler didn’t got started on boot and a command to tell OPR it had the default form mounted was required to start printing. Defining LPFORMS.INI avoided that problem and the print spooler started automatically. Does it make sense to you?

Blurred memories also tell me there was some alignement test involved. After telling OPR the printer had the form mounted it asked to confirm the form was correctly aligned.

Doh, memory

Timothe Litt
2018-03-21 12:43:27 UTC
Permalink
Post by Jordi Guillaumes Pons
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
Post by Jordi Guillaumes Pons
NORMAL:ALL/BANNER:01/HEADER:01/LINES:66/WIDTH:132/TRAILER:01
2) In OPR: SHUTDOWN PRINTER 0
3) In OPR: START PRINTER 0/DEVICE:LPT0
I don’t remember what problem I was trying to solve, but right now
this file exists and printing works. Hope it can help you.
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
LPFORM.INI tells LPTSPL how to process forms (the paper stock on which a job is printed).
The default form is "Normal".  Form names with the same 4 initial
characters use the same stock; no operator intervention is required
to change among them. (This is used to allow specifying soft
parameters, such as the number of banner pages, per job.)  If a job
requires different stock, the operator is notified.
IIRC the problem was the print spooler didn’t got started on boot and
a command to tell OPR it had the default form mounted was required to
start printing. Defining LPFORMS.INI avoided that problem and the
print spooler started automatically. Does it make sense to you?
Blurred memories also tell me there was some alignement test involved.
After telling OPR the printer had the form mounted it asked to confirm
the form was correctly aligned.
Doh, memory

Not exactly.  The default form is NORMAL.  The printer is started by
OPR; as long as INITIA runs, it will start OPR, which will take
SYSTEM.CMD.  SYSTEM.CMD is what configures the galactic components.

LPTSPL is started by QUASAR whenever it's needed - that is, a stream is
started and there's a job in the queue (or has been recently).  QUASAR
maintains the printer state, so LPTSPL doesn't have to stick around when
idle.  It's possible that LPTSPL prompts for a form if LPFORM.INI
doesn't exist - I believe there's a default LPFORM.INI on the
distribution tapes, and I don't recall running without one in a VERY
long time :-)

Alignment is invoked when the mounted stock changes and /ALIGN is
specified in LPFORM.INI; it's used to match the VFU to the paper - e.g.,
when printing labels, or pre-printed forms (e.g. invoices, checks,
greenbar). 

It is likely that that without LPFORM.INI, LPTSPL conservatively asks
for alignment.  As I said, it's a good idea to have one.

However, the OP wasn't getting that far - the printer status shown is
"not available", indicating that the stream is assigned to a device that
doesn't exist or is assigned to another job.  The most likely cause is
failing to enable it in SimH.

I'm not inclined to read the code to refresh my memory of what happens
without LPFORM.INI - having one is a good idea, and I don't think it
relates to the OP's issue.
Quentin North
2018-03-21 14:24:36 UTC
Permalink
Having fixed the LPFORMS, SYSTEM.CMD and SYSJOB.INI, and enable lp20 in simh, I still couldn’t get it to work until I did the shutdown and startup as below. Now it prints. Hurrah!

14:18:09 Printer 0 -- Not available right now --

OPR>shutdown printer 0
OPR>
14:18:14 Printer 0 -- Shutdown --
OPR>start printer 0/device:lpt0
OPR>
14:18:27 Printer 0 -- Startup Scheduled --
OPR>
14:18:27 Printer 0 -- Started --

14:18:28 Printer 0 -- VFU error --
Reloading RAM and VFU

14:18:28 Printer 0 -- Loading RAM with 'LP64' --

14:18:28 Printer 0 -- Loading VFU with 'NORMAL' --

14:18:28 <1> Printer 0 -- Align Forms and Put Online --
Type 'RESPOND <number> PROCEED' when ready

OPR>respond 1 proceed
Post by Jordi Guillaumes Pons
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
Post by Jordi Guillaumes Pons
NORMAL:ALL/BANNER:01/HEADER:01/LINES:66/WIDTH:132/TRAILER:01
2) In OPR: SHUTDOWN PRINTER 0
3) In OPR: START PRINTER 0/DEVICE:LPT0 <device:LPT0>
I don’t remember what problem I was trying to solve, but right now this file exists and printing works. Hope it can help you.
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
LPFORM.INI tells LPTSPL how to process forms (the paper stock on which a job is printed).
The default form is "Normal". Form names with the same 4 initial characters use the same stock; no operator intervention is required to change among them. (This is used to allow specifying soft parameters, such as the number of banner pages, per job.) If a job requires different stock, the operator is notified.
IIRC the problem was the print spooler didn’t got started on boot and a command to tell OPR it had the default form mounted was required to start printing. Defining LPFORMS.INI avoided that problem and the print spooler started automatically. Does it make sense to you?
Blurred memories also tell me there was some alignement test involved. After telling OPR the printer had the form mounted it asked to confirm the form was correctly aligned.
Doh, memory

Not exactly. The default form is NORMAL. The printer is started by OPR; as long as INITIA runs, it will start OPR, which will take SYSTEM.CMD. SYSTEM.CMD is what configures the galactic components.
LPTSPL is started by QUASAR whenever it's needed - that is, a stream is started and there's a job in the queue (or has been recently). QUASAR maintains the printer state, so LPTSPL doesn't have to stick around when idle. It's possible that LPTSPL prompts for a form if LPFORM.INI doesn't exist - I believe there's a default LPFORM.INI on the distribution tapes, and I don't recall running without one in a VERY long time :-)
Alignment is invoked when the mounted stock changes and /ALIGN is specified in LPFORM.INI; it's used to match the VFU to the paper - e.g., when printing labels, or pre-printed forms (e.g. invoices, checks, greenbar).
It is likely that that without LPFORM.INI, LPTSPL conservatively asks for alignment. As I said, it's a good idea to have one.
However, the OP wasn't getting that far - the printer status shown is "not available", indicating that the stream is assigned to a device that doesn't exist or is assigned to another job. The most likely cause is failing to enable it in SimH.
I'm not inclined to read the code to refresh my memory of what happens without LPFORM.INI - having one is a good idea, and I don't think it relates to the OP's issue.
_______________________________________________
Simh mailing list
http://mailman.trailing-edge.com/mailman/listinfo/simh
Timothe Litt
2018-03-21 14:33:05 UTC
Permalink
You should not need the /Device.  There may be an issue if you haven't
assigned a non-zero ANF-10 node number to the machine - I vaguely
remember a bug with that.  You can change the START PRINTER command in
SYSTEM.CMD if necessary.  But it's better to assign a node number.

Note that the LP64 RAM is upper-case only.  (It will fold lowercase to
uppercase.)  If you expect (upper and) lower case output, use LP96.RAM. 
LPTSPL will make the right choice if you MONGEN the printer correctly,
as will any application that asks for the printer type (or uses the LL
pseudo-device).
Post by Quentin North
Having fixed the LPFORMS, SYSTEM.CMD and SYSJOB.INI, and enable lp20
in simh, I still couldn’t get it to work until I did the shutdown and
startup as below. Now it prints. Hurrah!
14:18:09        Printer 0  -- Not available right now --
OPR>shutdown printer 0
OPR>  
14:18:14        Printer 0  -- Shutdown --
OPR>start printer 0/device:lpt0
OPR>  
14:18:27        Printer 0  -- Startup Scheduled --
OPR>  
14:18:27        Printer 0  -- Started --
14:18:28        Printer 0  -- VFU error --
                Reloading RAM and VFU
14:18:28        Printer 0  -- Loading RAM with 'LP64' --
14:18:28        Printer 0  -- Loading VFU with 'NORMAL' --
14:18:28  <1>   Printer 0  -- Align Forms and Put Online --
                Type 'RESPOND <number> PROCEED' when ready
OPR>respond 1 proceed
Post by Timothe Litt
Post by Jordi Guillaumes Pons
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
Post by Timothe Litt
Post by Jordi Guillaumes Pons
NORMAL:ALL/BANNER:01/HEADER:01/LINES:66/WIDTH:132/TRAILER:01
2) In OPR: SHUTDOWN PRINTER 0
3) In OPR: START PRINTER 0/DEVICE:LPT0
I don’t remember what problem I was trying to solve, but right now
this file exists and printing works. Hope it can help you.
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
LPFORM.INI tells LPTSPL how to process forms (the paper stock on
which a job is printed).
The default form is "Normal".  Form names with the same 4 initial
characters use the same stock; no operator intervention is required
to change among them. (This is used to allow specifying soft
parameters, such as the number of banner pages, per job.)  If a job
requires different stock, the operator is notified.
IIRC the problem was the print spooler didn’t got started on boot
and a command to tell OPR it had the default form mounted was
required to start printing. Defining LPFORMS.INI avoided that
problem and the print spooler started automatically. Does it make
sense to you?
Blurred memories also tell me there was some alignement test
involved. After telling OPR the printer had the form mounted it
asked to confirm the form was correctly aligned.
Doh, memory

Not exactly.  The default form is NORMAL.  The printer is started by
OPR; as long as INITIA runs, it will start OPR, which will take
SYSTEM.CMD.  SYSTEM.CMD is what configures the galactic components.
LPTSPL is started by QUASAR whenever it's needed - that is, a stream
is started and there's a job in the queue (or has been recently). 
QUASAR maintains the printer state, so LPTSPL doesn't have to stick
around when idle.  It's possible that LPTSPL prompts for a form if
LPFORM.INI doesn't exist - I believe there's a default LPFORM.INI on
the distribution tapes, and I don't recall running without one in a
VERY long time :-)
Alignment is invoked when the mounted stock changes and /ALIGN is
specified in LPFORM.INI; it's used to match the VFU to the paper -
e.g., when printing labels, or pre-printed forms (e.g. invoices,
checks, greenbar). 
It is likely that that without LPFORM.INI, LPTSPL conservatively asks
for alignment.  As I said, it's a good idea to have one.
However, the OP wasn't getting that far - the printer status shown is
"not available", indicating that the stream is assigned to a device
that doesn't exist or is assigned to another job.  The most likely
cause is failing to enable it in SimH.
I'm not inclined to read the code to refresh my memory of what
happens without LPFORM.INI - having one is a good idea, and I don't
think it relates to the OP's issue.
_______________________________________________
Simh mailing list
http://mailman.trailing-edge.com/mailman/listinfo/simh
Quentin North
2018-03-22 12:22:08 UTC
Permalink
Through some testing, i have confirmed that the resolution of the printing for me was adding the /device:lpt0 switch. Im not sure where to set up the ANF-10 node number as I don’t have networking enabled on my Tops-10 system. I couldn’t see where in MONGEN you enter much about the printers. The only question I can see is Include UNIBUS/LP20 printers (NO,YES,PROMPT): y
You should not need the /Device. There may be an issue if you haven't assigned a non-zero ANF-10 node number to the machine - I vaguely remember a bug with that. You can change the START PRINTER command in SYSTEM.CMD if necessary. But it's better to assign a node number.
Note that the LP64 RAM is upper-case only. (It will fold lowercase to uppercase.) If you expect (upper and) lower case output, use LP96.RAM. LPTSPL will make the right choice if you MONGEN the printer correctly, as will any application that asks for the printer type (or uses the LL pseudo-device).
Post by Quentin North
Having fixed the LPFORMS, SYSTEM.CMD and SYSJOB.INI, and enable lp20 in simh, I still couldn’t get it to work until I did the shutdown and startup as below. Now it prints. Hurrah!
14:18:09 Printer 0 -- Not available right now --
OPR>shutdown printer 0
OPR>
14:18:14 Printer 0 -- Shutdown --
OPR>start printer 0/device:lpt0 <device:lpt0>
OPR>
14:18:27 Printer 0 -- Startup Scheduled --
OPR>
14:18:27 Printer 0 -- Started --
14:18:28 Printer 0 -- VFU error --
Reloading RAM and VFU
14:18:28 Printer 0 -- Loading RAM with 'LP64' --
14:18:28 Printer 0 -- Loading VFU with 'NORMAL' --
14:18:28 <1> Printer 0 -- Align Forms and Put Online --
Type 'RESPOND <number> PROCEED' when ready
OPR>respond 1 proceed
Post by Jordi Guillaumes Pons
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
Post by Jordi Guillaumes Pons
NORMAL:ALL/BANNER:01/HEADER:01/LINES:66/WIDTH:132/TRAILER:01
2) In OPR: SHUTDOWN PRINTER 0
3) In OPR: START PRINTER 0/DEVICE:LPT0 <device:LPT0>
I don’t remember what problem I was trying to solve, but right now this file exists and printing works. Hope it can help you.
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
LPFORM.INI tells LPTSPL how to process forms (the paper stock on which a job is printed).
The default form is "Normal". Form names with the same 4 initial characters use the same stock; no operator intervention is required to change among them. (This is used to allow specifying soft parameters, such as the number of banner pages, per job.) If a job requires different stock, the operator is notified.
IIRC the problem was the print spooler didn’t got started on boot and a command to tell OPR it had the default form mounted was required to start printing. Defining LPFORMS.INI avoided that problem and the print spooler started automatically. Does it make sense to you?
Blurred memories also tell me there was some alignement test involved. After telling OPR the printer had the form mounted it asked to confirm the form was correctly aligned.
Doh, memory

Not exactly. The default form is NORMAL. The printer is started by OPR; as long as INITIA runs, it will start OPR, which will take SYSTEM.CMD. SYSTEM.CMD is what configures the galactic components.
LPTSPL is started by QUASAR whenever it's needed - that is, a stream is started and there's a job in the queue (or has been recently). QUASAR maintains the printer state, so LPTSPL doesn't have to stick around when idle. It's possible that LPTSPL prompts for a form if LPFORM.INI doesn't exist - I believe there's a default LPFORM.INI on the distribution tapes, and I don't recall running without one in a VERY long time :-)
Alignment is invoked when the mounted stock changes and /ALIGN is specified in LPFORM.INI; it's used to match the VFU to the paper - e.g., when printing labels, or pre-printed forms (e.g. invoices, checks, greenbar).
It is likely that that without LPFORM.INI, LPTSPL conservatively asks for alignment. As I said, it's a good idea to have one.
However, the OP wasn't getting that far - the printer status shown is "not available", indicating that the stream is assigned to a device that doesn't exist or is assigned to another job. The most likely cause is failing to enable it in SimH.
I'm not inclined to read the code to refresh my memory of what happens without LPFORM.INI - having one is a good idea, and I don't think it relates to the OP's issue.
_______________________________________________
Simh mailing list
http://mailman.trailing-edge.com/mailman/listinfo/simh <http://mailman.trailing-edge.com/mailman/listinfo/simh>
Timothe Litt
2018-03-22 12:44:45 UTC
Permalink
Setting up the ANF-10 node number is under networking.  It changes
device naming (e.g. if your host's node number is 16, LPT0 becomes
LPT160).  Virtually all customers had some sort of network, so bugs
(such as this one) crept in.  We tried to keep non-network
configurations working, but bugs did come up.  (Probably because no
in-house system was without a network...)

IIRC, in HWCFG under the LP20, there should be a question like "LPT0
lowercase [YES,NO,PROMPT]:"
Post by Quentin North
Through some testing, i have confirmed that the resolution of the
printing for me was adding the /device:lpt0 switch. Im not sure where
to set up the ANF-10 node number as I don’t have networking enabled on
my Tops-10 system. I couldn’t see where in MONGEN you enter much about
the printers. The only question I can see is Include UNIBUS/LP20
printers (NO,YES,PROMPT): y
Post by Timothe Litt
You should not need the /Device.  There may be an issue if you
haven't assigned a non-zero ANF-10 node number to the machine - I
vaguely remember a bug with that.  You can change the START PRINTER
command in SYSTEM.CMD if necessary.  But it's better to assign a node
number.
Note that the LP64 RAM is upper-case only.  (It will fold lowercase
to uppercase.)  If you expect (upper and) lower case output, use
LP96.RAM.  LPTSPL will make the right choice if you MONGEN the
printer correctly, as will any application that asks for the printer
type (or uses the LL pseudo-device).
Post by Quentin North
Having fixed the LPFORMS, SYSTEM.CMD and SYSJOB.INI, and enable lp20
in simh, I still couldn’t get it to work until I did the shutdown
and startup as below. Now it prints. Hurrah!
14:18:09        Printer 0  -- Not available right now --
OPR>shutdown printer 0
OPR>  
14:18:14        Printer 0  -- Shutdown --
OPR>start printer 0/device:lpt0
OPR>  
14:18:27        Printer 0  -- Startup Scheduled --
OPR>  
14:18:27        Printer 0  -- Started --
14:18:28        Printer 0  -- VFU error --
                Reloading RAM and VFU
14:18:28        Printer 0  -- Loading RAM with 'LP64' --
14:18:28        Printer 0  -- Loading VFU with 'NORMAL' --
14:18:28  <1>   Printer 0  -- Align Forms and Put Online --
                Type 'RESPOND <number> PROCEED' when ready
OPR>respond 1 proceed
Post by Timothe Litt
Post by Jordi Guillaumes Pons
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
Post by Timothe Litt
Post by Jordi Guillaumes Pons
NORMAL:ALL/BANNER:01/HEADER:01/LINES:66/WIDTH:132/TRAILER:01
2) In OPR: SHUTDOWN PRINTER 0
3) In OPR: START PRINTER 0/DEVICE:LPT0
I don’t remember what problem I was trying to solve, but right
now this file exists and printing works. Hope it can help you.
Jordi Guillaumes i Pons
HECnet: BITXOW::JGUILLAUMES
LPFORM.INI tells LPTSPL how to process forms (the paper stock on
which a job is printed).
The default form is "Normal".  Form names with the same 4 initial
characters use the same stock; no operator intervention is
required to change among them. (This is used to allow specifying
soft parameters, such as the number of banner pages, per job.) 
If a job requires different stock, the operator is notified.
IIRC the problem was the print spooler didn’t got started on boot
and a command to tell OPR it had the default form mounted was
required to start printing. Defining LPFORMS.INI avoided that
problem and the print spooler started automatically. Does it make
sense to you?
Blurred memories also tell me there was some alignement test
involved. After telling OPR the printer had the form mounted it
asked to confirm the form was correctly aligned.
Doh, memory

Not exactly.  The default form is NORMAL.  The printer is started
by OPR; as long as INITIA runs, it will start OPR, which will take
SYSTEM.CMD.  SYSTEM.CMD is what configures the galactic components.
LPTSPL is started by QUASAR whenever it's needed - that is, a
stream is started and there's a job in the queue (or has been
recently).  QUASAR maintains the printer state, so LPTSPL doesn't
have to stick around when idle.  It's possible that LPTSPL prompts
for a form if LPFORM.INI doesn't exist - I believe there's a
default LPFORM.INI on the distribution tapes, and I don't recall
running without one in a VERY long time :-)
Alignment is invoked when the mounted stock changes and /ALIGN is
specified in LPFORM.INI; it's used to match the VFU to the paper -
e.g., when printing labels, or pre-printed forms (e.g. invoices,
checks, greenbar). 
It is likely that that without LPFORM.INI, LPTSPL conservatively
asks for alignment.  As I said, it's a good idea to have one.
However, the OP wasn't getting that far - the printer status shown
is "not available", indicating that the stream is assigned to a
device that doesn't exist or is assigned to another job.  The most
likely cause is failing to enable it in SimH.
I'm not inclined to read the code to refresh my memory of what
happens without LPFORM.INI - having one is a good idea, and I don't
think it relates to the OP's issue.
_______________________________________________
Simh mailing list
http://mailman.trailing-edge.com/mailman/listinfo/simh
Loading...