HP Forums
Curious SINPLOT behavior on HP71B - Printable Version

+- HP Forums (https://archived.hpcalc.org/museumforum)
+-- Forum: HP Museum Forums (https://archived.hpcalc.org/museumforum/forum-1.html)
+--- Forum: Old HP Forum Archives (https://archived.hpcalc.org/museumforum/forum-2.html)
+--- Thread: Curious SINPLOT behavior on HP71B (/thread-226783.html)



Curious SINPLOT behavior on HP71B - Christoph Giesselink - 07-11-2012

Hello,

I'm somehow curious with the HP71B SINPLOT example

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

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?

Christoph


Re: Curious SINPLOT behavior on HP71B - Mike (Stgt) - 07-12-2012

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?

Ciao.....Mike


Re: Curious SINPLOT behavior on HP71B - Olivier De Smet - 07-12-2012

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 ...

Olivier

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


Re: Curious SINPLOT behavior on HP71B - Christoph Giesselink - 07-12-2012

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

After changing the line 5 to

5 ENDLINE "" @ DEGREES @ PRINT CHR$(27);"E";
the spook was over.

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

40 ENDLINE

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

Christoph




Re: Curious SINPLOT behavior on HP71B - J-F Garnier - 07-12-2012

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.