Epson LX-90 User Manual - IBM PC Jr. 8690 PIC for LX-90 - Page 78

Ibm Pc Basic Solutions, For X=0 To 255, Lprint Chr$x, Next X

Page 78 highlights

Some software changes one or more codes when sending them to the printer. The ability of the LX-90 to dump in hexadecimal lets you determine which codes are creating problems for your system. A data dump printout of a program shows you exactly what the printer is receiving, regardless of what the computer is sending. The following test program lets you check to see what codes, if any, are problems for your software. This program is in BASIC; use an equivalent program for another programming language. 10 FOR X=0 TO 255 20 LPRINT CHR$(X); 30 NEXT X Put the printer in data dump mode and then RUN the program. Remember to press the ON LINE button to make the LX-90 print the final line. Then compare your printout with the list of hex codes in order in Appendix A. If any are skipped or repeated, you will know that your software changes some codes before it sends them to the printer. For example, in the lines below, which are the first two lines of the printout of the test program run with IBM PC BASIC, you can see that in this case BASIC adds hex 0A, which is the code for line feed, after hex 0D, the code for a carriage return. You will also notice that the program does not send hex 1A, which is decimal 26. Both of these characteristics are discussed in the next section. The data dumping capability can help you debug a program quickly. Appendix A will help you translate the hex codes to ASCII equivalents. IBM PC BASIC Solutions There are three problems in using the IBM Personal Computer BASIC to drive a printer. First, the IBM PC BASIC inserts a carriagereturn/line-feed (CR-LF) after each 80 characters you send it. Second, it adds an LF to each CR in an LPRINT statement. Third, it will not send hex 1A (decimal 26). E-6

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100

Some software changes one or more codes when sending them to
the printer. The ability of the LX-90 to dump in hexadecimal lets you
determine which codes are creating problems for your system.
A data dump printout of a program shows you exactly what the
printer is receiving, regardless of what the computer is sending. The
following test program lets you check to see what codes, if any, are
problems for your software. This program is in BASIC; use an equiv-
alent program for another programming language.
10 FOR X=0 TO 255
20 LPRINT CHR$(X);
30
NEXT X
Put the printer in data dump mode and then RUN the program.
Remember to press the
ON LINE
button to make the LX-90 print the
final line. Then compare your printout with the list of hex codes in
order in Appendix A. If any are skipped or repeated, you will know
that your software changes some codes before it sends them to the
printer.
For example, in the lines below, which are the first two lines of the
printout of the test program run with IBM PC BASIC, you can see
that in this case BASIC adds hex 0A, which is the code for line feed,
after hex 0D, the code for a carriage return. You will also notice that
the program does not send hex
1A,
which is decimal 26. Both of these
characteristics are discussed in the next section.
The data dumping capability can help you debug a program
quickly. Appendix A will help you translate the hex codes to ASCII
equivalents.
IBM PC BASIC Solutions
There are three problems in using the IBM Personal Computer
BASIC to drive a printer. First, the IBM PC BASIC inserts a carriage-
return/line-feed (CR-LF) after each 80 characters you send it. Second,
it adds an LF to each CR in an LPRINT statement. Third, it will not
send hex
1A
(decimal 26).
E-6