Home > Previous Page >  lprint-42
Archive Search  

lprint-42

Full title lprint-42
Year of release 1985
Publisher Boldfield Computing
Producer / Author(s) Charles Wehner
Memory 3K
Type Utility
Cost : £9.89
Download lprint-42 [CRC32 FAC416C1]
Distribution Permission Allowed | Group 1

Instructions

This routine is one of five words saved on the cassette and further words included in the main programs ZX-PRINTER and WORDACE, which are intended for the advanced user. These enable a wide range of printing options to be generated and customised for your own specific purposes.

However, before these are used, some explanation is required of the principles involved. Usually, the most condensed form of creating information (such as graphics characters) is by means of an algorithm which works like a mathematical formula.

However, complicated and virtually random characters (such as the alphabet) are not readily described in this way, and they have to be stored explicitly in a data array or 'look-up-table'. The words provided here encompass both techniques. When the second method is used, you will see an associated dot addressable array, normally called DOTFILE present (eg. THINPRINT, WORDACE etc.).

You will also see that some operations are performed by supporting words which can be used separately if required. For example, the ITALIC Font uses SLOPE, and the sideways printing in WORDACE uses TURNDOTS.

Whilst most of the words are useful in their own right, the real intention is to illustrate the methods adopted and hence to allow the experienced user to write his own programs based on the same routines.

The final word of this five from the Utilities cassette is LPRINT-42 (load lprint-42), and this is a version of LPRINT incorporating the techniques to generate 42 column printing.

Another tab word (TTAB) is supplied to operate on the printer, and as before the word to resume the screen display is BYE.

Words that have been included in the main programs that might be of interest are:

TURNDOTS turns an 8 x 8 bit dot array on the stack clockwise by 90 degrees.

SLOPE expects the address of the first byte of 256, and then shifts the First 32 bytes to the right by 7 bits, the second by 6 bits etc.

ASCIIDOTS a FORTH algorithm, makes an inversion code (InC) which is 0 for normal and 255 for inverse, then 'normalises' the ASCII code and works out where to fetch the dots from.

FETCHDOTS does this, with GRAPHICHARS making the graphics.

PRINTSCREEN a FORTH word that has the effect of COPYing the current screen image to the printer.

You might also find another word SHOW useful to examine any 8 bit character set whose finish and start address are on the stack:

: SHOW
DO
CR I . I C@
8 0
DO
DUP 128 AND EMIT 2
*
LOOP
DROP 1000 0
DO
LOOP
LOOP
;

Try: 8192 7600 SHOW to see some ROM characters

Tape Inlay



Cassette Body