Star Micronics NB-15 user manual

Page 105

for user-defined characters, but a caution is in order. Characters with ASCII values below 32 are usually reserved as control codes by both your computer and your printer. While these characters can be replaced by user-defined characters, it should be avoided because of the effect on the normal control codes.

In our example, we’ll assign the car a value of 60, which is the code for the character “(” in the ASCII characters. A rather ar- bitrary selection, but this printer doesn’t care!

Our chart would hardly be complete with just a picture of a car, so in Figure 8-8 we’ve made completed grids for some other symbols: a telephone (quite a strange mix of characters!). The in- formation on the grids is now completed.

nDownload character definition command

You’ve read through a long explanation of download characters and we haven’t even told you the command syntax yet! Now the wait is over. This is the most complex command in your printer repertoire and now you’ve got the necessary knowledge to implement it. Here it is:

(ESC) “&” CHR$(O) nl n2 m0 ml m2 dl d2 d3 ... dx

Like the other printer’s commands, it starts with an (ESC) (CHR$(27)). The next character is an ampersand (&) (CHR$(38)) followed by a CHR$(O).

nl and n2 are used to specify the ASCII values of the characters you are defining. The reason that there are two bytes reserved for this is that your printer allows you to define many characters with just a single command. nl is used to specify the beginning of a range of characters to be defined; a.2 specifies the end of the range. For instance, if you wanted to change the ap- pearance of the numerals from 0 to 9 (which have ASCII codes 48 through 57), the command would begin with (ESC) “&” CHR$(O) CHR$(48) CHR$(57) ... Of course, you can also define individual characters by making nl and n2 equal.

The three bytes following the specification of the range of characters (m0, ml and m2) are used to specify the width of the character and the space to be allowed on either side of it. The left space (in dot column) is specified by m0 and the right space is specified by m2. The second byte (ml) specifies the number of columns of dots that will be printed by the character. By vary- ing the width of the character itself and the spaces around it, you can actually create proportional width characters.

Image 105
Contents USER’S MANUAli Tatement Special Message to the New Owner Table of Contents CHR$ Chapter Controlling with BasicChapter Special Features of the Printer Functions of the Connector Signals TRS-80 Basic Appendix G Serial Interface SpecificationsSetting UP Your Printer Page Tion and movement for both removing and replacing the cover Page Print head Printer Slide the I/F board into the slot Page Getting to Know Your Printer Page Page Page Selecting and Loading Paper ‘igure 2-4. Raise the paper guide for loading single sheets You can insert a sheet of paper by using the release lever To align paper that is not in straight Sprocket cover You can raise While trrnirrgon the power Self-test DIP switch 2-2 on Efgh!jklmnopqr¶tuvwxyz~ ?lSS&‘ TOF During normal operation Connecting the Printer Page Memo Using Commercial Software Page Ascii Using Your Printer with Word Processors Page Memo Controlling With Basic List PR#ONEW Lprint Testing RUN ESC W Lprint CHR$27WCHR$l Lprint CHR$27WCHR$49 Lprint CHRS27Wl Memo Printing Text Lprint CHR$27 xl ESC OFF ESC Lprint UndelinedLprint Overlined Boldface on Escso When you run this program you should get this Demonstration Condensed Here’s what you should get from this program OFF Elite mint Summary notes Memo Formatting Text This is what you will get This Line Spacing is SET to Run the program again. Now the results will look like this Here is what your printer will produce Lprint CHRS12 Line NumberIOI ESCNCHR$n Lprint this is LINE1 Next This is Line Return TWO Three Four ONE This command sets the horizontal tab to every eight columns Next Try thisprogram tosee how this works Lprint CHR$11 First TAB Lprint CHR$llFIFTH TAB CHR$O Lprint 2ND TAB of CHANNEL’ Memo Special Features Printer Lprint CHR$7 ESCVCHR$O Here is what this program will print Lprint CHR$27il Printing direction commands Function Control code Next Lprint Lprint Eighth bit controls Next J 129 LPRINTCHR$27 LPRINTCHR$27= Lprintlprint Double This is Double Sized Printing Lprint CHR$I Next LprintPage Creating Your OWN Characters Print Matrix Defining Your OWN Characters Usethisgridoronesimilartoittodefineyourown draftcharacters Wrong 128 Assigningavalueofcharacterspace Characterdesignsforthetwographsymbols Page Read MM LPRINTCHR$MM Next M Next N Lprint LPRINTCHR$I Next Lprint CHR$I Next LprintLprint LPRINTGERMANYCHR$9 Lprintscales Read MM Lprint CHR$MM Next M Data 1, 9, 2, 31,253,64, 32, 1,128,80MO+ml +m2 105 106