The Museum of HP Calculators

HP Forum Archive 14

[ Return to Index | Top of Index ]

HP-33S polar-coordinate bug -- another manifestation
Message #1 Posted by Karl Schneider on 31 Aug 2004, 2:28 a.m.

Here is another manifestation of the HP-33S polar-coordinate conversion bug, that was identified by "Steve A" and investigated by me at this link:

Polar Conversion bug in HP-33S

Basically, if a coordinate pair (-0,y) is entered (y not = 0), then the angle of the polar-coordinate conversion is not computed correctly.

This problem is also manifested in the complex-valued natural-logarithm function "CMPLXLN", since:

CMPLXLN (x + i*y) = 0.5*ln (x2 + y2) + i*["atan2" (y, x)]    

where "atan2" is the intrinsic function in Fortran and C that gives the correct angle of the polar-coordinate conversion.

It is easy to see that the simplest way to calculate CMPLXLN is to convert the complex-valued input argument into polar coordinates, then take the natural logarithm of the magnitude (radius).

On the 33s, try:

10 ENTER 0 (left shift) CMPLX LN 

You will get the correct answer 2.3026 + i*1.5708

Then, try:

10 ENTER 0 +/- (left shift) CMPLX LN 

You will get the incorrect answer 2.3026 + i*4.7123 (where 4.7123 = 1.5*pi radians = 270 degrees, which is the angle that "->theta,r" will give).

-- KS

Edited: 31 Aug 2004, 2:30 a.m.

      
Re: HP-33S polar-coordinate bug -- another manifestation
Message #2 Posted by Tom (UK) on 31 Aug 2004, 8:28 a.m.,
in response to message #1 by Karl Schneider

This may be a well worn argument, but why didn't HP use a hardware interpretor for the existing Saturn code? I'm sure it would have avoided all these teething bugs which is taking the shine off of the HP33S, it would also have given access to the large library of Saturn code.

PS well done for all those finding and researching the errors, any news from HP on these??? Perhaps HP should equip the HP33S with flash memory and soem i/o for later upgrades!

            
'Can't do that!'
Message #3 Posted by Ron Ross on 31 Aug 2004, 9:22 a.m.,
in response to message #2 by Tom (UK)

Any I/O would have resulted in this beast not being allowed on the NCEES exams. The 42s only has IR output and long variable names and that was enough to get it banned.

I wish Hp had just re-released the Hp42s with 32-128K ram, serial or USB port (no real need for IR), and toss in the 48G units conversions. And use the old hardware and form factor (shave of a cm off the top would be even better). I would buy 3 of those today, right now, even at the 49G+ list price.

But that is probably why the Hp42s was NEVER marketed or sold at the same price as the Hp17B. Because it robbed sales from Hp's flagship calculator, The HP48G series.

Rant off.

            
Re: HP-33S polar-coordinate bug -- another manifestation
Message #4 Posted by Bill Wiese on 31 Aug 2004, 3:07 p.m.,
in response to message #2 by Tom (UK)

Hi...

Quote:
...may be a well worn argument, but why didn't HP use a hardware interpretor for the existing Saturn code? I'm sure it would have avoided all these teething bugs

Probably a time & development constraint. Kinpo couldn't be trained quickly enough in Saturn architecture, and maybe doing an emulator would be tricky for them. (It's not, but that might be perception.)

I'm wondering - the way co's move depts and work around to different facilities - if HP even _has_ the 32S(II) ROM source around anymore!

They shoulda done this with a Nut emulator for the HP12CP as well. Again, finding anyone in HP that knows the Nut CPU would be impossible.

> Perhaps HP should equip the HP33S with flash memory > and some i/o for later upgrades!

I/O may violate school & exam standards though it would be nice.

Given the HP33S price slot and projected price declines, they can only afford to put in a $0.50-$0.70 CPU. Flash CPUs are much more expensive than mask ROM CPUs because the flash memory area is much much larger: not only are the flash bit cells bigger but there are charge pump areas next to the flash memory that take up die area. A 32KB flash ROM CPU is gonna cost at least around $1 more (approx). That's $2.50-$3 change in the end-user price.

[In fact, the 65C02 CPU core in the Sunplus chip in the 33S could well be smaller than 32KB of flash memory!!!]

Bill Wiese
San Jose


[ Return to Index | Top of Index ]

Go back to the main exhibit hall