monett_s@cho006.cho.ge.com (06/27/91)
The problem with the EPSON driver is the section of code that attempts to tab over white space on a line. I don't know what printer recognizes the command sequence used in the GS2.2 driver but it is not recognized by my Panasonic and it appears that many other Net readers are having the same problem. I was able to fix gdevepsn.c so that it would print properly on my Panasonic 1091i and an old IBM Personal Graphics Printer. I just disabled the tab code. Here are my changes to gdevepsn.c ============================================================================= ===========> Locate this piece of code in gdevepsn.c while ( outp < out_end ) { /* Skip a run of leading 0s. */ /* At least 10 are needed to make tabbing worth it. */ /* We do everything by 3's to avoid having to make */ /* different cases for 8- and 24-pin. */ if ( *outp == 0 && outp + 12 <= out_end && outp[1] == 0 && outp[2] == 0 && (outp[3] | outp[4] | outp[5]) == 0 && (outp[6] | outp[7] | outp[8]) == 0 && (outp[9] | outp[10] | outp[11]) == 0 ) { byte *zp = outp; int tab; outp += 12; while ( outp + 3 <= out_end && *outp == 0 && outp[1] == 0 && outp[2] == 0 ) outp += 3; tab = (outp - zp) / bytes_per_dot; outp = zp + tab * bytes_per_dot; /* Output preceding bit data. */ if ( zp > out_blk ) /* only false at */ /* beginning of line */ eps_output_run(out_blk, (int)(zp - out_blk), y_mult, start_graphics, prn_stream); out_blk = outp; /* Tab over to the appropriate position. */ /* Relative tabs work in half-dots. */ tab *= 2; fputc(033, prn_stream); fputc('\\', prn_stream); /* dot tab */ fputc(tab & 0xff, prn_stream); fputc(tab >> 8, prn_stream); } else outp += y_mult; } ===========> Replace it with this outp = out_end; ============================================================================= I know that some other optimizations are needed but this lets the driver work. I am working on a new version of the driver that will use the multipass modes of the 8 pin printers for smoother text so I will get to it eventually. -- ----------------------------------------------------------------------------- Steve Monett monett_s@cho006.cho.ge.com GE-Fanuc; Charlottesville, VA