The Printer - Sinclair ZX81 User Manual

Hide thumbs Also See for ZX81:
Table of Contents

Advertisement

Chapter 20 - The ZX81 Printer
If you have got a ZX81 printer, you will have some operating instructions with it. This chapter covers the
BASIC statements needed to make it work.
The first two, LPRINT & LLIST , are just kile PRINT and LIST , except that they use the printer instead of
the television. (The L is a historical accident. When BASIC was invented it usually usually used an
electronic typewriter instead of a television, so PRINT really did mean print. If you wanted messages of
output you would use a vry fast line printer attached to the computer, & an LPRINT statement meaning
'Line printer PRINT '.)
Try this program for example.
10 LPRINT "THIS PROGRAM:",,,,
20 LLIST
30 LPRINT ,,"PRINTS OUT THE CHARACTER SET.",,,
40 FOR N=0 TO 255
50 LPRINT CHR$ N;
60 NEXT N
The third statement, COPY , prints out a copy of the television screen. For instance, get a listing on the
screen of the program above, & type
COPY
You can always stop the printer when it is running by pressing BREAK key (space).
If you execute these statements without the printer attached, it should just lose all the output & carry on
with the next statement. However, sometimes it might get stuck, & when this happens the break key will
bring it out.
Summary
Satements: LPRINT , LLIST , COPY
Note : None of these statements is standard BASIC, although LPRINT is used by some other computers.
Exercises
1. Try this:
10 FOR N=31 TO 0 STEP -1
20 PRINT AT 31-N,N; CHR$ ( CODE "0" +N);
30 NEXT N
You will see a pattern of letters working down diagonally from the top right-hand corner until it reaches
the botrom of the screen, when the program stops with error report 5.
Now change ' AT 31-N,N' in line 20 to ' TAB N'. The program will have exactly the same effect as before.
Now change PRINT in line 20 to LPRINT . This time there will be no error 5, which should not occur with
the printer, & the pattern will carry on an extra ten lines with the digits.
Now change ' TAB N' to ' AT 21-N,N' stil using LPRINT . This time you will get just a single line of
symbols. The reason for the difference is that the output from the LPRINT is not printed straight away, but
arranged in a buffer store a picture one line long of what the computer will print when it gets round to it.
The printing takes place
(i) when the buffer is full,
(ii) after an LPRINT statement that does not end in a comma or semicolon.
(iii) when a comma or TAB item requires a new line.
or (iv) at the end of a program, if there is anything left unprinted.
(iii) explains why our program with TAB works the way it does. As for AT , the line number is ignored &
the LPRINT position (like the PRINT position, but for the printer instead of the television) is changed to the
column number. An AT item can never cause a line to be sent to the printer. (Actually, the line number
after AT is not completely ignored; it has to be between -21 & +21 or an error will result. For this reason it
is safest always to specify line 0. The item ' AT 21-N,N' in the final version of our program would be much

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents