wp34s 2.0 Beta Release



#9

We've finally released what we believe is very close to the final wp34s firmware. Go to SourceForge.net and get the file wp34s.zip!

We do not plan to add any more features as we only have a few hundred bytes of flash space left. Feel free to provide useful user programs for the system that can be neatly packed in the available user flash pages if you want more functions. It's a programmable machine in the end, isn't it?

We expect that the community will still find some bugs and inaccuracies and kindly ask you to play around with either the emulator or a reflashed HP calculator and report back your findings.

Looking forward to your comments.

Marcus, Pauli & Walter

P.S.: I've had trouble uploading the file. If you've downloaded a corrupted archive, just try again.

Edited: 9 June 2011, 6:20 a.m. after one or more responses were posted


#10

Hmmm... The file there appears to be broken? I downloaded it (it's 1931337 bytes), but when I try to extract the zip, I get an error. I tried to download it twice, with the same results.

A question: if I just update with svn, do I get the same version?

Cristian


#11

I've just fixed the file. SF is giving some grief from time to time. SVN should generally be the same or a newer version. It's just not so neatly packaged.

Edited: 9 June 2011, 6:22 a.m.

#12

Not sure if this is the official 2.0 but from the SVN I have
2.0 1037 and I cannot get the character h in the alpha register. This occurs both in and out of programming mode

This also plagues the emulator as well.


Edited: 9 June 2011, 7:03 a.m.


#13

Beta bug #2 :-(

A fix is committed but not built yet.


- Pauli


#14

I've rebuild, committed and released the correction.


#15

Quote:
I've rebuild, committed and released the correction.

Could you please also rebuild wp32s.exe in the SVN?
I really like this GUI-less version ... ;-)

Thanks,
Franz


#16

Franz, no problem. You like this version more than I do. ;-).

With the installation of MS Visual C++ Express which is free from Microsoft you can do the compile yourself.


#17

Quote:
Franz, no problem. You like this version more than I do. ;-).

Thanks Marcus, I got it.

And yes, as a 50+ oldie I really like everything that reminds me on DOS! ;-)

And BTW, this console version also accepts Shift-7 and Shift-+ for / and *, which the GUI version still doesn't.
Quote:
With the installation of MS Visual C++ Express which is free from Microsoft you can do the compile yourself.

Well if you would know my slow internet connection, you won't have made this suggestion.

Franz

#18

For those that do use the console version and want to run under Wine, I discovered that you need to use "wineconsole wp34s.exe" to run this rather than "wine wp34s.exe".

Since I am most definitely not a Wine expert, I can't tell you why or what the difference is.

Enjoy...


#19

Quote:
For those that do use the console version and want to run under Wine

Why???? The native console version builds easily for Mac and Linux.

I am actually a bit surprised by the interest in the console version. I thought I was the only person doing anything with it (and that is for ease of debugging).


Pauli


#20

Actually, I was looking back for anything about an assembler and you made a point on 12 May about "Build the console version and run 'calc xrom'". I thought I would see if I could get something out of that but could not really figure out what "run calc xrom" meant in that context.

Before I saw anything of this I was thinking of trying to cobble together an assembler/disassembler in Perl (my poison of choice) to work with the wp34s.dat file. I have since trolled through some of the C and found mnemonic-type listings (ie: xrom.c) that obviously correspond to what you were talking about. I would love to be able to work with something like this to write and edit programs -- presumably loaded/unloaded through the wp34s.dat facility.

I spent a few hours seeing if I could figure out the format of the dat file but got a bit swamped in all the details.

Anyway, that is the only reason I mentioned it. I had to figure out how to get the executable going in my environment (Ubuntu 10.04) before I decided I didn't really want to work with it if I had a choice. I had no real wish to build it from scratch when you had already done all the work to get it to an exe for me!! FWIW I *MUCH* prefer to use the emulator -- but no real surprise there I am sure. :-)

Cheers...


#21

Neil, the flash files are much easier to understand. They start with a CRC followed by the number of program steps + 1 (two shorts). The rest is program steps. The CRC can be replaced by the wildcard value A53C which is considered valid in any circumstance. All values are little endian.


#22

Quote:
The CRC can be replaced by the wildcard value A53C which is considered valid in any circumstance.

Now forgive me but I have to ask... when I see apparently random numbers being chosen as "special", I get curious... How did you choose just that value as a wildcard? Why not a "less random" number like 0000 or FFFF? :P


#23

Quote:
How did you choose just that value as a wildcard? Why not a "less random" number like 0000 or FFFF? :P

I wanted to make sure that the magic number has some magic in it. So the two bytes should not be identical nor should one byte be the complement of the other. Since FFFF is the default contents of free flash memory and 0000 is the default value for blanked out RAM, neither value is a good candidate for a magic number. I chose a funny bit pattern as "my" value: 1010.0101.0011.1100.

#24

Quote:
I chose a funny bit pattern as "my" value: 1010.0101.0011.1100.

Ah, OK... It looks much less random when seen in binary. I should have noticed! Thank you for the explanation! :)

Cristian

#25

I just noticed a difference in aVIEW. Now when I show the Alpha register, the numeric display shows "---", while before, the normal X register was shown.
I see it's not a bug because it's documented in the manual, but I was just wondering why it was changed. In case I needed the old behavior, should I just put VWa+?


#26

Yes, VWa+ X does it. The added benefit is that you can view any register together with Alpha.

#27

It was changed after a fairly lengthy and lively discussion about what we wanted to achieve with the view commands.

The initial problem being that you couldn't both view alpha (alphaVIEW) and a register (VIEW) at the same time as the second command canceled the first. VWalpha+ was introduced to achieve this.

Once the new command was present, there really wasn't any need for alphaVIEW to display the X register as well as alpha (that being available with VMalpha+ X) so the bottom line was effectively erased. Thus providing an alpha prompt without a numeric value which is something I've missed while programming e.g. the 35s.

Also, even though these are in the catalogues, there is a short cut: h-shift VIEW ENTER always gives alphaVIEW.


- Pauli

#28

Looks great. I'll load it onto my calculator tonight.

I'm glad to see that nothing of consequence in the layout has changed (though the layout in the manual doesn't agree with the emulator, with alpha and FILL swapped), so the overlays everyone should be receiving will still be accurate. Speaking of which, I have mailed 30 of the overlays so far, and I have 15 more that are printed and ready to mail, but I ran out of stamps so I'll mail those tomorrow after I stop by the post office. The remainder I will mail on Saturday or Monday.

Eric


#29

Ooops, my fault :-( Corrected and committed in SVN doc.

Thanks for watching

Walter

#30

Quote:
I'm glad to see that nothing of consequence in the layout has changed.

Intentionally :-) Not that much in the way of changes were actually proposed.


- Pauli


#31

Quote:


Intentionally :-) Not that much in the way of changes were actually proposed.

- Pauli


Pauli, just as an idea for an eventual future "adjusting" of the layout... I remember my very first frustration, when trying out the emulator, was finding out how to switch back from integer to floating point. Now I know I have to push H.d, but I remember scanning the keyboard without finding anything that sounded useful.
After all, how to switch to integer is rather obvious - just push 2,8,10 or 16 - so wouldn't it be nice if the reverse was as obvious?

I guess relabeling that key to make it a little more evident (i.e. "float" or "decimal") is out of the question?

Cristian


#32

Cristian,

Many months ago, we featured two labels: one named ".d" for decimal mode (the opposite of integer) and one named "HR" or "H" for decimal hours (the opposite of H.MS). It took some time until I realized these two are actually doing the same: converting something to decimal. So they were merged into one label "H .d" for that reason. This way we gained one more label :-)

Walter

#33

Another small issue I noticed (this is really minor and doesn't involve any new feature or anything! :)
If you press On+C, to use a hardware crystal, the message displayed is:
"Crystal? Installed"
This might be misleading in that it could be read as a confirmation that the crystal is indeed installed.
As I see that some alphabetical characters can be generated even in the 7-segment display, could it be possible to move the question mark to the lower line, so that the message reads
"Crystal installed?"
or even "Is crystal installed" if the 7-segment question mark looks too ugly?

What do you think?

Cristian


#34

I don't think its worth the effort. Once activated, you'll never see the message again.


#35

I downloaded the latest version but I can't make it change the skin type or size on my PC? Is that normal with this release?


#36

Tim,

Skin changing works fine here (build 1066, Win7).

HTH

Walter


#37

Thanks I got it to work now.

#38

The first thing I noticed was a permanent decimal point/comma even for integers in ALL and FIX 0. This always annoyed me on other calculators. On the 41-series this can be solved by clearing Flag 29 (thousands separator off), while on the 34s even after E3OFF the decimal marker remains visible.

While we are on this topic: some time ago we had a discussion concerning an improved standard display format that switches to scientific notation only if the value is below 0,01 or 0,001. If memory serves well, this was generally considered a good idea. So, how about that?

I also wonder if there is a way that makes SHOW display all 16 digits. Yes, I know the display only has 12 digits. I also would prefer the classic MANT/SHOW style that also displays trailing zeroes. But the 16-digit issue is something I really would appreciate.

The second thing I tried was - once again ;-) - the precision of the statistical distributions and their inverses. The Chi-square quantile still returns values that are completely off. Try 10 d.o.f. and p = 1E-9 and you will get something like 2,01256 (which also looks like it required substantial execution time on a physical 20s/30s), while the correct result is 0,083152. In the meantime I have found a method that gives a nice initial estimate for the Chi-square quantile, which is within -10...+6% of the true value (or even +/-3% after some tweaks). In most cases a 16-digit result is obtained after 4 - 6 iterations. Also, an estimate for the F-quantile should be no big problem. Let me know if there's sufficient space left and the better estimate can be implemented.

Dieter


#39

We can always reclaim another K from the user library area in flash. I was hoping these issues were long sorted out. You should send your findings to Pauli via the forum mail system.

A remark on the decimal marker at the end of a number. That was my request to Pauli. I'm used to this since the early beginnings of calculator use (an SR-51A at the time). I was missing it and Pauli did me the favor.

We have some additions to scientific and engineering notation, related to what happens when a number over or underflows. I'm not deep enough into this matter but the manual should tell you.

AFAIK, the 0.001 to sci transition is not implemented. It might be worthwhile to do so but we need enough space for it.

Showing more than 12 digits would involve scrolling or repeated key presses. Suggest an implementation!


#40

Among the statistical distributions the Normal and Student case have been discussed here earlier, and in both cases good and (I hope) sufficiently fast solutions are implemented now. I still wait for a 20s/30s user with 34s firmware to report actual execution times for the Normal and student quantile.

For some other distributions there are exact direct solutions that do not require an iterative approach, but there were and are still two cases left that require some improvements in the quantile algorithm: these are the Chi-square and F-distribution.

I think I found a fine solution for the Chi-square case, and I just tried it on the new 34s emulator v2. The estimate is fine, but using the solver, the quantile sometimes does not converge well. On the other hand a simple Newton approach usually finds a 16-digit solution with just a few iterations. Which sounds like it may be better not to use the solver here, just as in the Normal case which returns fast and accurate results now with a dedicated algorithm.

Anyway, I will post my results as soon as the final formula for the estimate is fixed. Most of the work has been done 80 resp. 35 years ago now. ;-)

Dieter


#41

Quote:
For some other distributions there are exact direct solutions that do not require an iterative approach, but there were and are still two cases left that require some improvements in the quantile algorithm: these are the Chi-square and F-distribution.

I did some work on Chi-square but not on F. Clearly neither is good enough yet.

There are two others left. Both Poisson and Binomial are also suspect.


- Pauli

#42

Hallo Dieter,

Quote:
We have some additions to scientific and engineering notation ...

Please look at ENGOVR and SCIOVR.

Quote:
on the 34s even after E3OFF the decimal marker remains visible.

E3ON and E3OFF deal with the thousands separator. The decimal marker is another animal.

Walter

Edited: 10 June 2011, 4:29 p.m.


#43

ENGOVR now does what in the heydays of the '41 a synthetic command already could do: use FIX/ENG instead of FIX/SCI. ;-) However, it does not affect the ALL format in the proposed way. Some time ago, many users found it useful if the 34s would not display 1/30 as 3,33333333333 E-2 but simply 0,03333333333 - even if this means that one less digit is visible. It's simply more ..."natural". I still think this is a good idea.

The (IMHO annoying) decimal point/comma even for integer values actually could be controlled on the 41 by the setting of the thousands separator. If the separator was on, 1234 was displayed as "1.234," resp. "1,234.". With the separator off it was simply "1234" - no trailing point or comma. So the user could have it the way he wanted.

I think the combination of thousands separator and trailing decimal marker (as on the 41) is a quite clever idea. This way there will be no display like "1.300" or "1,300" that might be mistaken for 13/10 while it actually is "one thousand three hundred". The 41 would display either the larger value as "1300" or "1.300," resp. "1,300.", and the smaller value as "1,300" resp. "1.300".

Dieter


#44

Quote:
ENGOVR ... does not affect the ALL format in the proposed way. Some time ago, many users [2] found it useful if the 34s would not display 1/30 as 3,33333333333 E-2 but simply 0,03333333333 - even if this means that one less digit is visible [1]. It's simply more ..."natural".

[1] Two digits - after all, counting is the basis of mathemetics ;-)

[2] Two, three, four, many? I learned "many" has often a very archaic meaning in this forum when counting people :-)

BTW, I think this is a pretty academic request. IMHO everybody capable to use a scientific calc knows what 3,3E-2 or even 33E-3 means.

Walter

#45

Personally, I'm one of those who would prefer the 0,03333333333 display (for numbers smaller than 0.01 I'd want E notation of course). I don't know how many are we! :)
To see the full precision number, one could use the SHOW command...

Cristian


#46

Something is in the works, Cristian & Dieter.

#47

The next firmware release will have an ALL command which takes an argument. The argument specifies the number of zeros to the right of the decimal when which ALL mode changes to scientific notation even if this causes loss of digits or rounding at the extreme right.

ALL 00 is the same as the ALL command we used to have.
ALL 02 matches Dieter's and Cristian's desires.
ALL 11 is supported but a bit silly :-)


The biggest downside here is that binary compatibility with existing save files isn't maintained. You'll have to at least manually check all programs loaded from these.


- Pauli

#48

Quote:
Let me know if there's sufficient space left and the better estimate can be implemented.

I'll find the space....


- Pauli


Possibly Related Threads…
Thread Author Replies Views Last Post
  Another wish for next Prime firmware release Jose Gonzalez Divasson 0 1,144 11-21-2013, 06:55 AM
Last Post: Jose Gonzalez Divasson
  latest prime software release? Geoff Quickfall 3 1,681 10-12-2013, 03:53 PM
Last Post: Tim Wessman
  HP-15C Simulator / Release 3.2.00, Build 5319 Torsten 10 2,895 05-11-2013, 05:19 PM
Last Post: Thomas Klemm
  OT: Beta testers for the dark side of the universe Joerg Woerner 7 2,202 01-28-2013, 12:20 PM
Last Post: Geoff Quickfall
  [WP34S] WP34S firmware on the AT91SAM7L-STK dev kit? jerome ibanes 1 1,232 10-04-2012, 04:59 PM
Last Post: Paul Dale
  CAS beta testers wanted Oliver Unter Ecker 5 2,145 07-30-2012, 07:11 AM
Last Post: Oliver Unter Ecker
  Beta 41CL --> Best CL UTILs to burn in NoVRAM 64? Gene Wright 5 2,203 07-01-2012, 03:06 PM
Last Post: Matt Kernal
  OT: Pockemul 0.9.4 Beta is out Bill (Smithville, NJ) 3 1,336 03-31-2012, 09:35 PM
Last Post: Namir
  Seeking Beta Testers... Tim Wessman 0 792 03-15-2012, 12:55 PM
Last Post: Tim Wessman
  WP 34S: New release on SF Marcus von Cube, Germany 5 1,976 02-20-2012, 04:49 AM
Last Post: Marcus von Cube, Germany

Forum Jump: