The following warnings occurred:
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 795 - File: showthread.php PHP 7.4.33 (FreeBSD)
File Line Function
/showthread.php 795 errorHandler->error





Post Reply 
HP82143A printing - two views of the same medal
07-17-2024, 02:10 AM
Post: #1
HP82143A printing - two views of the same medal
Mike (Stgt) recently made a test print on my HP82240B printer simulation v1.17 in HP82143A mode with the service module ET-11968 in his NutEm/PC. The expected result is shown at "Figure 4-3. Printer Test Output" in the 82143A PRINTER SERVICE MANUAL.

As Mike noticed in his NutEm/PC manual, there's a large discrepancy between the figure 4-3 output and the print output of the HP82143A simulation. One of the main reasons is the printer behavior on the 44 byte character buffer overflow, a part not handled in the HP82143A simulation so far.

So a new approach made in v1.18beta2 with implementing the 44 byte character buffer. But there's still a difference between the figure 4-3 output and the v1.18beta2 print output which I could not explain.

Before the 1st "TRY OUT INTENSITY SWITCH" row I still have two empty columns in double-wide mode in the character buffer, which then have an effect on printing the first "TRY OUT ..." row. I compared the send byte sequence with the test print source code of the ET-11968 module, I found no difference. I have the MCode trace log from Mike's NutEm/PC run generating the svn.bin data.

I specially checked the printer status register reads between sending the last two bytes 0x00, 0xD0 from the downstairs graphic at
Code:
41BB 110 NCXQ   4422     [PROBY]
41BC 000 Data      0/@   ??
41BD 1D0 Data    464/ยท   clr LCA, SCO, and DWM

until the begin of the "TRY OUT..." messages at
Code:
4237 110 NCXQ   4422     [PROBY]

The C[13:12] return of
Code:
4753 264 PERTCT 9
4754 03A RPREG  0
4755 005 RTNCPU

code between was
Code:
C=02..  MAN
C=82..  TRACE
C=42..  NORM
C=62..  NORM + PRT

as result of the mode switch and PRT key test. In all cases the BE bit 8 (Buffer Empty) was not set, which is correct because there're are still 3 bytes (0x00, 0x00, 0xD0) left in the character buffer. So I'm mostly sure that the test print byte sequence of NutEm/PC is equal to the one send to the real printer.

About buffer size 43 vs. 44 characters, old versions of nonpareil are using 43 character for buffer overflow.

At the 82143A PRINTER SERVICE MANUAL at p.2-2 section 2-16: "The character buffer consists of 44 eight-bit registers which are used to store an eight-bit code for each character to be printed."

At the 82143A PRINTER OWNER'S HANDBOOK at p.62:

"Accumulating Columns
A series of column print numbers can be accumulated together into the
print buffer using ACCOL (accumulate column). This allows you to print
special graphics up to 43 columns wide."

Eric began a disassembly of the HP82143A firmware at https://github.com/brouhaha/82143a-mk3870-fw.

Here we have a character buffer from address 0x14 to 0x3f which are 44 byte, but it seem to be implemented as ring buffer with a "current" and an "end" pointer. A ring buffer regularly can only hold "buffersize - 1" elements because when Read and Write pointer are equal, this means empty buffer. When filling a ring buffer with "buffersize" elements the Write-pointer will be incremented to the Read-pointer position and we can't distinguish between buffer-full and buffer-empty any more.

But using a 43 character buffer in my v1.18beta2 implementation produce a line overflow of the two "barcode" lines each with additional columns in the next line. So 44 seem to be correct.

I attached the actual output of v1.17, the output of v1.18beta2 and the send byte sequence (svn.bin) received by the printer simulation.

Could any HP8213A expert, familiar with the printer control codes, explain the byte sequence interpretation difference of the figure 4-3 output and the print output of v1.18beta2?

   
   

.zip  svn.zip (Size: 260 bytes / Downloads: 3)
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
HP82143A printing - two views of the same medal - Christoph Giesselink - 07-17-2024 02:10 AM



User(s) browsing this thread: 4 Guest(s)