[comp.sys.handhelds] Confirmed bug in HP-48SX Kermit implemenation

howard@lysator.liu.se (M V Howard) (05/22/90)

fin@norge.unet.umn.edu (Craig A. Finseth) writes:

>We encountered a problem when trying to send an object that had a
>right arrow (141 decimal) character in its name.

[... deleted ...]

>Comments?  Confirmation?

I discovered the problem with my Amiga. I run VT100 which gladly excepts the
right arrow in a file name, but the Amiga's OS will trash the disk.
Strangely, it does this, not when it creates the file, but later when reading
or writing other files and updating the disk structure. At least, that's when
it reports "Disk has a read/write error".

/MHd




--
Programming isn't a science,         | EMAIL: d89.m-howard@linus.ida.liu.se
it's an art.                         |        howard@elinor.lysator.liu.se
Why is it called common sense,       |        howard@lage.lysator.liu.se
when so few possess it ?             |        Martin_Howard.d89.lith@xns.liu.se

herman@corpane.UUCP (Harry Herman) (05/29/90)

In article <25@lysator.liu.se>, howard@lysator.liu.se (M V Howard) writes:
> fin@norge.unet.umn.edu (Craig A. Finseth) writes:
> 
> >We encountered a problem when trying to send an object that had a
> >right arrow (141 decimal) character in its name.
> 
> [... deleted ...]
> 
> >Comments?  Confirmation?
> 
> I discovered the problem with my Amiga. I run VT100 which gladly excepts the
> right arrow in a file name, but the Amiga's OS will trash the disk.
> Strangely, it does this, not when it creates the file, but later when reading
> or writing other files and updating the disk structure. At least, that's when
> it reports "Disk has a read/write error".
> 
> /MHd
> 
Today I created a variable A->B (with -> being the 141 decimal symbol) and
stored a 0 in it.  I then used the Kermit that came with the HP IBM-PC
serial cable kit and used it to receive the object A->B.  I put the PC
in server mode, and put the name 'A->B' on the HP stack and used the HP
SEND command to send it.  The Kermit program claimed to be receiving the
file: AiB (the i was actually the i with the grave accent over it) and
it also claimed it was saving the file into MS-DOS file AXB (apparently
changing the grave accented i into an X).

Upon exitting Kermit and typing out the file, it in fact had:
%%HP: T(3)A(D)F(.);
0

This was done in ASCII mode, at 9600 baud, no parity, with checksum mode
3 and translate code 3.

bobwo@hpcvra.CV.HP.COM (Bob Worsley) (06/01/90)

/ hpcvra:comp.sys.handhelds / fin@norge.unet.umn.edu (Craig A. Finseth) /  2:04 pm  May 24, 1990 /

>	 2. The "M" following the "#" has its high bit set since the
>	 first two packets shown agreed not to do 8th bit prefixing.
>	 Your tracing equipment is probably like mine (doesn't show the
>	 high bit even when set to 8 bit characters).  Character code
>	 141 decimal is 8D hex which looks like a control character
>	 with the high bit set, hence the preceding "#" control quote
>	 character and the transformation from 8D to CD (not 4D).
>
>The program would show a cd hex character as ~M, not M.  Hence, this
>difference would be visible.

I found a way to trace the transactions in hex, and the "->" character
is in fact sent as "cd" hex (the high bit _is_ set).  This is further
confirmed by the funny character displayed on the PC or Mac receive file
name.  Therefore the checksum sent by the HP 48 is correct.


> The actual problem was as described: we created an object that had a
> right arrow (141 decimal) character in its name.  When trying to
> upload the object to a Macintosh, we received a checksum error (using
> the HP-supplied Kermit on the Macintosh).  We then tried the
> HP-supplied Kermit on an IBM PC.  Same problem.  We then tried
> PC/InterComm (whcih has the tracing capabilities).  Same problem.  All
> of these programs transfer other object properly.  PC/InterComm
> reported a checksum computation problem.  (I don't recall whether the
> Kermit programs indicated the type of error.)

I tried uploading an object with the same name to a Mac, and the upload
failed until I asked for a dialog on each file and entered a normal name
in place of the received name with the funny character in it.  When I
renamed the object in this manner it transferred with no problems.

The real problem appears to be that the Mac doesn't like a name with the
character 141 in it.  I suspect it won't like any of the characters in the
range 128 - 159 since some systems consider them to be control characters.

The Kermit on my PC automatically renamed the object to CRXP so it had no
problem receiving it.  

The HP 48 does support file renaming when sending or receiving, so you could
also avoid the problem on the 48 end.

fin@norge.unet.umn.edu (Craig A. Finseth) (06/04/90)

My apologies to all.  I appeared to be hallucinating when I claimed to find
a bug in the HP-48SX Kermit.  I tried it again over the weekend and it works
fine (to send an object with a '->' in its name).

Craig A. Finseth			fin@unet.umn.edu [CAF13]
University Networking Services		+1 612 624 3375 desk
University of Minnesota			+1 612 626 1002 FAX
130 Lind Hall, 207 Church St SE, Minneapolis MN 55455-0134, U.S.A.