HP Forums

Full Version: Wp34s base mode question
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

I'm still "playing" with the emulator, waiting for the cable to arrive so that I can reprogram my 30b (by the way, I'm sort of liking the 30b even before reprogramming! Is there a place to download the original 30b firmware, so I can flash it back should I want to?)
I'm mostly interested in the "integer base" mode, as I still do some programming in old 8 bit computers - and I used the 16c until now.

On the 16c, if for example you set 2's complement, and 8 bits word, then the numeric entry is interpreted "on the fly": i.e. if I am in base 10 and try to enter 254, this is what happens: I press 2 and the display shows "2"; I press 5 and the display shows "25"; I press 4 and the display shows "-2" because 254 doesn't exist in 8-bit 2's complement, but its bit pattern represents a decimal "-2".
The same happens if I try to enter a number too big, i.e. 400: I press 4,0 and the display shows "40", then further digits are completely ignored (because no number starting with "40" and with 3 or more digits has a meaning in 8 bit words).
I liked being able to see what was "going on" before actually entering the number on the stack. Is this a behavior that will eventually be implemented, or will it stay as it is?

Second question: I noticed that the current version of the emulator (1.17 build 874) still has the hexadecimal "E" bug - i.e. if you enter E by itself (or as a last digit), it is ignored and a 0 is entered instead. What's the status of that bug? Will it be fixed in a new emulator? Or, is there a way to tell the emulator to use the latest firmware?

Third, unrelated question: Does anyone know if there is a way to have the 16c integer base capabilities (especially with respect to settable word size, and carry/overflow bits management) with the 50G? Either natively or with some additional software?

Thank you,
Cristian

Cristian, V1.17 is frozen with all its bugs. You can get 1.18 from the SVN repository. The emulator is in the trunk/windows/bin subdirectory. This is "software in motion" and may be broken at any time. If that's the case, SVN allows to retrieve older versions.

The emulator does not use the actual flash file as it does not try to emulate the hardware. It uses the same software base (written in C) but is compiled with an MS compiler to produce a Windows executable.

Hi Marcus,
Thank you for your reply. I just installed the most recent version.
The "E" digit bug is indeed gone, but my other questions still stand. I noticed that when you enter a number larger than the word size, it is entered "modulo" the word size... What happens, do you just drop the extra most-significant bits when Enter is pressed?
Do you have any plans to implement the 16c behavior (the live interpreting of the entries)?

Thanks again,
Cristian

The question has to go to Pauli who wrote that stuff. I don't believe that he will implement the life interpretation because wp34s has an internal command line which gets interpreted only when some function is performed. So the interpretation needs to be implemented directly in the input editor.

Your assumption about the modulo interpretation makes sense to me.

Yes, we do the input modulo the word size.

No, I'm not planning on changing the way numbers are input. The sources are freely available, so feel free to send us a patch :-)

Marcus is correct about the input going into a command line buffer. It should be possible to process the command line on keyboard entry and do what the 16c does.


You'll have to write the bit manipulation code for the 50g if you want carry and overflow. The ancient *fix project includes a pile of RPL code I wrote that does this. I don't remember where to find the repository nor how easy it would be to move to the 50g.


- Pauli

Thank you both for your replies! :)
I don't know C well enough to understand (let alone patch) a project like this, so I think I'll be content with the wp34s as it is - after all, once you know how it works and what to expect from the machine, then it's not that different.
But I'm a little better at RPL than at C, so I may try implementing something on the 50g when I have the time... might be fun! :)

Cristian

I too am waiting for both my cable and my new HP30b to arrive. I am very willing to sacrifice my current HP20b -- especially since there seems to be a replacement F/W image in the HP SDK -- but I might like to revert the (yet to arrive) 30b back to its native state.

Does anyone know the answer to Cristian's question about restoring the original HP30b F/W? Is it available from HP by special request or can it be downloaded from the calculator?

BTW: My 20b F/W has a checksum of 130 (copyright 8 01 2008) whereas all the examples I have seen online have different checksums. Does anyone know what F/W versions are out there? What version is in the SDK?

Cheers...

HP 30b firmware is available from Tim Wessman on request. I can't give any information about existing versions.

There is no way to read out the flash through the serial connector. In order to get into SAM-BA mode, you'll need to erase the flash first. After this, the original firmware is gone. In wp34s, I've added a command to just clear the boot bit and boot into SAM-BA. This preserves the flash contents. To my knowledge no such feature exists in the original firmware.