http://bugs.winehq.org/show_bug.cgi?id=11917
Summary: Parallel port printing problem (missing flow control?) Product: Wine Version: unspecified Platform: Other OS/Version: other Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
http://www.winehq.org/pipermail/wine-users/2008-March/029601.html and http://www.winehq.org/pipermail/wine-users/2008-March/029648.html say that printing directly to a dot-matrix printer by writing directly to LPT1 works if you write one byte at a time, but fails with missing chars if you write many bytes at a time.
http://bugs.winehq.org/show_bug.cgi?id=11917
Detlef Riekenberg wine.dev@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wine.dev@web.de
http://bugs.winehq.org/show_bug.cgi?id=11917
--- Comment #1 from Dan Kegel dank@kegel.com 2008-03-08 12:41:45 --- User gave a nice test program to illustrate the problem:
program timp; (* Delphi 7 *) {$APPTYPE CONSOLE} uses SysUtils,windows; (* Star SP200 Buffer off sw 6 on, Epson TM-U210PD buffer off sw 1-2 on*) var devname : string = 'LPT1'; ps : array [0..41] of char = '0123456789012345678901234567890123456789'#10#13; nl : array [0..3] of char = #10#13#10#13; i,i2,FHandle : integer; e : DWORD; begin FHandle := CreateFile(PChar(devname), GENERIC_WRITE, 0, nil, OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL, 0 ); try for i := 0 to 49 do WriteFile(FHandle,ps[0],42,e,nil); (* xp ok *)
for i := 0 to 3 do WriteFile(FHandle,nl[i],1,e,nil);
for i := 0 to 49 do for i2 := 0 to 41 do WriteFile(FHandle,ps[i2],1,e,nil); (* xp&wine ok *) finally CloseHandle(FHandle); end; end.
exe: http://ajuda.variavel.com/timp.zip (I'll attach it)
Wine version 0.9.28 kernel 2.6.21, large printer buffers can hide the problem.
http://bugs.winehq.org/show_bug.cgi?id=11917
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|unspecified |0.9.28.
--- Comment #2 from Dan Kegel dank@kegel.com 2008-03-08 12:42:12 --- Very old version of wine. I'll ask him to update.
http://bugs.winehq.org/show_bug.cgi?id=11917
--- Comment #3 from Dan Kegel dank@kegel.com 2008-03-08 12:42:40 --- Created an attachment (id=11224) --> (http://bugs.winehq.org/attachment.cgi?id=11224) Compiled test app supplied by user
http://bugs.winehq.org/show_bug.cgi?id=11917
--- Comment #4 from Dan Kegel dank@kegel.com 2008-03-08 13:25:45 --- Looks like a flow control problem. User writes:
[Problem doesn't show up with large hardware buffer in the printer.] A larger buffer than the job may not show problems. In a POS printing a invoice is a small job 1K-2K, a older printer with a small buffer (Star SP200 1K buffer) will see problems a newer printer with a large buffer (epson TM-U220 4K) seems to work must of the time, so to test I disable the hardware buffer, i tried do change the bios settings (normal, epp etc) and the parport options (irq=none, dma=none etc) to no avail, and the problem shows even in a vmware guest.
http://bugs.winehq.org/show_bug.cgi?id=11917
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |FIXED
--- Comment #5 from Dan Kegel dank@kegel.com 2008-03-08 16:40:29 --- User says fixed in wine-0.9.57 / ubuntu 7.10. Yay!
http://bugs.winehq.org/show_bug.cgi?id=11917
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #6 from Alexandre Julliard julliard@winehq.org 2008-03-21 10:53:23 --- Closing bugs fixed in 0.9.58.