Talking about the WP 34s at the internal HP calculator forum



#2

This is an internal forum at HP where people can post questions, etc about calculators. I have tried to drum up some interest in the WP 34s and 41CL there.

You will probably have to register to view the content. FYI.

Business Support Forum on the HP Servers


#3

Everything's readable without registration for me. Thanks for posting. There seems to be far less activity in months, however, than at a single day on the museum forum. So well, it's another channel, but apparently a minor one.

Thanks anyway,

Walter


#4

Good! Did not know you could read it without registration.

Yes, it has quieted down, but I wanted to again point people in the direction to find out more info.

On another note...I have the first draft of the matrix programs for the 34s keyed in. Debugging now. 197 lines is all it takes. Could do a 6x6 system or inverse, 8x8 determinant. That's a limit based on 100 registers available.


#5

Sounds good. With respect to matrix size requirements, please note I posted a statement in another thread recently.

Just my 20m€, of course, as usual :-)


#6

Oh, I agree. 8x8 determinant is more than enough and 6x6 system / inverse is really awfully big too.

These should handle the "normal" matrix work, assuming they are debugged well. :-)

Would be good to put a "check mark" in the box on "matrix math" with the 34s description, IMO.


#7

Gene, I was wondering how a usable editor / browser for matrix data could be implemented with the current command set. Or do the routines depend on manual data entry?


#8

The plan is to also include the PPC ROM application program "MIO" from the PPC ROM manual. It helps with the loading / viewing of the matrix.

What you say? You don't have a copy of the PPC ROM manual? :-) Shame on you! lol.


#9

Everyone owning a museum DVD has got a copy of said telephone directory. And I've even got a printed one :-)


#10

Good! No wonder you made many very good decisions on the 34s. ;-)

But, what I am working on is a very vanilla port of M1 through M5, BX, QR, BE from the PPC ROM and then RRM and MIO from the M1 routines application programs.

First draft, which should fit into the 506 step flash bank with few problems, will not use the REG-SWAP features of the 34s because the programs are written assuming XX.YY in X and TT.ZZ in Y for register swaps, for example. Once it is working then refinements can be worked on.

So, no secret what these will look like. They will be as much like those in the PPC ROM manual as possible. :-)

#11

I have a copy of the PPC manual--in fact you were the source! I traded a HP-19C case for the manual. Boy, did I get the better end of that deal!

Mark Hardman

#12

Great news.

197 steps? I think there isn't enough functionality there. You've got 506 steps for this library :-)

Check the back of the 15c for a start. Then consider:

  • Eigen decomposition
  • Joran normal form
  • SVD
  • Smith canonical form
  • Cholesky decomposition
  • Matrix log and exponential
  • Anything from JMB's superb site.

Remember the 34S motto: "if something is worth doing, it is worth utterly overkilling". I just made that up, it isn't really the motto but it is almost apt.

- Pauli


Edited: 11 Aug 2011, 6:06 p.m. after one or more responses were posted


#13

We can throw in another user flash region if desired or some yet unknown tricks for the user interface. Tell us what's missing and we'll consider.


#14

I was thinking more of pre-filling one of the user flash regions with this library but another such region is always beneficial :-) Even a read only flash region is possible.

We've a little space at present so if there is a specific command that saves a lot of steps or increases performance, let us know and we'll consider it...


- Pauli


#15

I'm thinking of a neat way to display row / column indexes in the alpha area without disturbing the user's display settings.


#16

How about "r2;c2" ? Or - if space is really tight - "2;2" based on everybody knowing it's "row;column"? Just crossed my mind.


#17

Quote:
How about "r2;c2" ? Or - if space is really tight - "2;2" based on everybody knowing it's "row;column"? Just crossed my mind.

Good ideas, but I have a very similar and slightly different suggestion. How about we use the 42S notation? The first element in a matrix on a 42S is 1:1=0.00 Most would be familiar with this notation already, but any slight variation would be fine and people would recognize it easily.


#18

The problem is the available set of commands in the 34S for handling the alpha register. The only available command aRC# formats the number according to the current display format. If you just want 2 instead of 2.0000 (depending on what is set by the user) you need to set a proper format first. For single digits adding 48 and using XTOA helps but is not the best possible solution.


#19

Maybe there's something I miss here, but isn't the [alpha]IP command intended for exactly this case? It appends the integer part of a number to Alpha, no matter which display format is currently set, without any decimals, trailing zeroes or radix marks.

Dieter


#20

Thanks Dieter.

Seems we'd both forgotten about the existence of this one :-(


- Pauli


#21

The 34S exceeds our intellectual capacities. ;-)

Now, with aIP and KEY? available, Franz' browser idea can be implemented in user code. :-)


#22

Quote:
The 34S exceeds our intellectual capacities. ;-)

Now, with aIP and KEY? available, Franz' browser idea can be implemented in user code. :-)


... and thus I'd vote for letting Franz do it :-)

#23

Quote:

... and thus I'd vote for letting Franz do it :-)


Njet, forget it!

The loop with checking for the 4 arrow keys and displaying the current matrix element would be no problem, but when the user enters any number (to change the current matrix element) things would become VERY complicated.

This would definitely be MUCH easier to do with internal code.

Edited: 13 Aug 2011, 6:13 a.m.


#24

I agree. It looks like a viewer would be easy to implement while an editor would be much harder.


#25

You need an "edit this element" key which is a bit more cumbersome.

Doing a full fledged editor in flash wouldn't be fun. The command line support just isn't set up for it. Adding a command to parse alpha as a number would be a bit easier.

Something to think about...


- Pauli


#26

Maybe the following works:

Navigate to the element in question

Hit R/S

Enter a number

Hit R/S

The loop which queries the keyboard for the arrow keys needs to check the ENTRY? flag to determine if it has been interrupted and needs to store the modified value in the currently selected location. The first R/S may be made automatic by a new command that allows to feed a key into the keyboard buffer so that the loop can terminate itself as soon as the user presses a digit entry key. Another command my help to detect if a key code is one of the digit entry keys 0-9, ., +/- or EEX.

#27

Use STOM and RCLM ???

This is exactly the kind of thing they are inlcuded for :-)


- Pauli

#28

Something like this ought to work:

LBL 00
RCLM L
FIX 00
aCLR
aRC# X
alpha ;
aRC# Y
STOM L
RTN


- Pauli


#29

That may work well, Pauli and could help with the MIO port.

But...

Don't you guys go getting too excited. This is a basic port and I'm not doing much intelligence with it. I had a math *minor* in college and never had linear algebra. What I know (which isn't much) I learned studying for the actuarial exam (several times).


#30

Quote:
I had a math *minor* in college and never had linear algebra.

Oh well. I did an awful lot of maths at university and loved linear algebra but that was a long time ago and much has been forgotten over the years. Use it or lose it really applies.

I'd love to find some time to spice up the matrix library but I'm kept pretty busy playing with the lower level firmware.


I forgot, a least squares solver could be handy too. Done via one of the standard decompositions rather than the more usual formula (X'X)^-1 X' Y.


- Pauli

#31

Pauli, you know we had a more elegant solution which was removed with the advent of the register browser. I vote for having a variant of aRC# which only converts the integer part without a trailing dot.


#32

Quote:
Pauli, you know we had a more elegant solution which was removed with the advent of the register browser. I vote for having a variant of aRC# which only converts the integer part without a trailing dot.

A wonderful solution would be a kind of matrix browser (like the register browser), where you navigate with the 4 arrow keys within the matrix, the current position is shown in the alpha display and the value in X. And if you type in a value and [ENTER] the value would be stored in the current matrix element.

But this could certainly only be done in the firmware itself and not by a user program - and I doubt that there's enough space left for such a feature.

Franz


#33

The size of a row or column is not known to the firmware, only to the user program. In a future version which may natively support matrices, such an editor is a viable option.


#34

Quote:
The size of a row or column is not known to the firmware, only to the user program.

Well, of course I meant that the browser should be called "with a special matrix", and the information about this matrix is stored anywhere (e.g. in a register with a value ss.rc, meaning: ss=start register, r=#rows, c=#cols of the matrix)
Quote:
In a future version which may natively support matrices, such an editor is a viable option.

Aaah, that sounds interesting!

I hope I'll live long enough to see such a version ... :-)

Edited: 12 Aug 2011, 6:09 p.m.


#35

Quote:
Aaah, that sounds interesting!
I hope I'll live long enough to see such a version ... :-)

Depends. Do it yourself and you'll determine the speed 8-)
#36

Any idea of the execution times for these maximal sized problems?

Just out of interest.


- Pauli


Possibly Related Threads…
Thread Author Replies Views Last Post
  [WP-34S] Unfortunate key damage with update to V3 :( svisvanatha 5 3,247 12-10-2013, 11:37 PM
Last Post: Les Bell
  WP-34S (Emulator Program Load/Save) Barry Mead 1 1,828 12-09-2013, 05:29 PM
Last Post: Marcus von Cube, Germany
  WTF? W-here T-o F-ind the original hpmuseum forum? Alexander Oestert 40 14,090 12-05-2013, 01:25 PM
Last Post: Matthias Wehrli
  DIY HP 30b WP 34s serial flash/programming cable Richard Wahl 2 2,566 12-04-2013, 11:14 AM
Last Post: Barry Mead
  A Reminder of the Forum's Terms of Use Mark Hardman 20 5,278 11-27-2013, 03:14 AM
Last Post: Walter B
  How to add image to HP Forum Posting Harold A Climer 2 1,537 11-20-2013, 02:28 PM
Last Post: Han
  WP 34S/43 ?'s Richard Berler 3 2,094 11-10-2013, 02:27 AM
Last Post: Walter B
  My FrankenCulator (wp-34s) FORTIN Pascal 4 2,204 11-09-2013, 06:18 PM
Last Post: FORTIN Pascal
  WP 34S Owner's Handbook Walter B 5 2,715 11-09-2013, 05:34 PM
Last Post: Harald
  wp 34s overlay and programming. FORTIN Pascal 6 2,939 11-08-2013, 01:28 PM
Last Post: Nick_S

Forum Jump: