HP Forums

Full Version: Curious SINPLOT behavior on HP71B
You're currently viewing a stripped down version of our content. View the full version with proper formatting.


I'm somehow curious with the HP71B SINPLOT example

10 FOR X=1 TO 32 @ Y=SIN(X*16)*4+4
20 PRINT CHR$(27);"%";CHR$(X);CHR$(Y);"*";

published here some weeks ago. The difference to the published version is, that I restricted to the X loop to 32 that the curve will only printed once on a 82163 video interface.

During my tests with Emu71/Win and a Virtual IL HP-82163A video simulator (ILVideo) I recognized sometimes garbage in the sineplot output. I analyzed the IL frame traffic and found "DAB 0D DAB 0A" data packages in the framing. So the garbage is created when the CR LF data frames are inside the cursor position ESC sequence like

DAB 1B  DAB 25  DAB 12  DAB 0D  DAB 0A  DAB 00  DAB 2A

Because the CR LF are in the IL framing data I was sure that my HP-82163A video simulator was working correctly. So the next suspect was the Emu71/Win emulator with it's HPIL processor simulation. But had no idea how to check this, so I decided to use a real HP71B (ROM rev. 1BBBB) instead of Emu71/Win.

So my loop now looked like

HP71B -> PILBOX | real HP-IL world
ILPilbox -> ILScope -> ILVideo -> back to ILPilbox | virtual HP-IL world

I got the same randomly garbage in the sineplot output and found also "DAB 0D DAB 0A" data packages in the ILScope output window. So IMHO the BASIC program itself is buggy. I tried to disable the "DAB 0D DAB 0A" data with the "WIDTH INF" command, but no success.

Any other idea?


Hallo Christoph! :)

Do you have the chance to capture the IL frames to a file, change the CRLF in question and send the modified data to ILVideo? Yes, I know, this is dirty but quick, only for one try. Do you need real HW for tests?


It seems that the HPIL loop decided to send the EOL default sequence (CR, LF) by itself, based certainly on a character count (HPIB can have the same behavior, I experienced it on emulating AMIGO disk protocol on HPIB ... receiving CR LF right in the middle of stream of data/command for a disk drive can be quite disturbing too)

Perhaps try to use CHR$(27);"H";CHR$(27);"%"; ... it can reset the emitted characters count in the HPIL loop ?

You can also redefine the EOL sequence of the HPIL loop temporary with ZERO length char string (you should be able to define a string up to 3 chars as EOL sequence, see manual,)

All is from memory so I can be completly wrong ...


Edited: 12 July 2012, 12:07 p.m.

I tried the program on Emu71/DOS and got the same garbage.

After changing the line 5 to

the spook was over.

To get normal end line behavior just enter ENDLINE on the command line or add a line 40 with


That's all. So finally I have to test the roll screen ESC'S and ESC'T commands on ILVideo.


The easiest way is to do PWIDTH INF.

Actually, I never liked the automatic CR/LF insertion related to WIDTH/PWIDTH.
I always set WIDTH INF and PWIDTH INF.