For example, if you wish to send 1632 columns of graphics data,
nl
should be 96 and
n2
should be 6 because 1632 = 96 + (6 x 256).
The LQ will interpret the number of bytes determined by
nl
and
n2
as graphics data, no matter what codes they are. This means that
you must be sure to supply enough bytes of graphics data or the
LQ will stop and wait for more data and will seem to be locked. If,
on the other hand, you supply too much graphics data, the excess
will be interpreted and printed as regular text.
A simple graphics program
This first program is just a simple example to show you how the
graphics command, column reservation numbers, and data can be
used in a BASIC program. Type in and run the following program;
be especially careful to include both semicolons. The program
produces the printout you see below it.
10
WIDTH
"LPT1:",255
20
LPRINT
CHR$(27)"*"CHR$(32)CHR$(40)CHR$(B)i
30
FOR
X=1
TO
120
40 LPRINT
CHR$(170);
50
NEXT
X
Line 20 selects single-density 24-pin graphics (mode 32) and also
reserves 40 columns for graphics. Since 24-pin graphics requires
three bytes of data for each column, line 30 begins a loop to supply
120 bytes of data. Line 40 contains the number 170, which produces
the first pin pattern shown in the section on pin labels, and line 50
finishes the loop.
Using hand-calculated data to print graphics
With what you know now, you can use the simplest application
of graphics - using hand-calculated data to print graphic images.
While this method is the most tedious, it helps you understand dot
graphics. Also, it is useful for small graphic elements that are used
many times.