What HP32SII improvements (in DM32) would you like ?

General discussion about calculators, SwissMicros or otherwise
Linus_Sch
Posts: 60
Joined: Sun May 09, 2021 9:33 am

Re: What HP32SII improvements (in DM32) would you like ?

Post by Linus_Sch »

Boub65 wrote:
Wed Sep 28, 2022 12:43 am
dlachieze wrote:
Tue Sep 27, 2022 8:52 pm
[*]Exchange with X:
  • x<> variable or stack register
[/list]
This one is difficult, because there is no "X<>" key on the keyboard...
There is a row of keys with undecided functions on them though!

ETA: Actually, there is, right-shifted swap.
Boub65
Posts: 231
Joined: Tue Sep 12, 2017 4:34 pm
Location: Rabat, Morocco

Re: What HP32SII improvements (in DM32) would you like ?

Post by Boub65 »

How to key LBL/GTO/XEQ 0 to 9 or .0 to .9 ?

When you key LBL/GTO/XEQ you have the A..Z annonciator
Hitting yellow shift (or f) removes the A..Z annonciator (hitting again yellow shift (or f) brings back the A..Z annonciator)
You can then key "0" to "9" or "." + "0" to "9" (when there is no A..Z annonciator) (the "." keeps the A..Z annonciator off)

So for example
LBL 0 is keyed f LBL f 0
LBL .9 is keyed f LBL f . 9
Sincèrement, Sincerely, 73,
Boubker

DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Boub65
Posts: 231
Joined: Tue Sep 12, 2017 4:34 pm
Location: Rabat, Morocco

Re: What HP32SII improvements (in DM32) would you like ?

Post by Boub65 »

How to use the stack registers XYZTL for the following instructions :
STO, RCL, STO +,-,×,÷ , RCL +,-,×,÷
X<>
VIEW
DSE, ISG

When you key in the instruction, you have the A..Z annonciator
Hitting yellow shift (or f) removes the A..Z annonciator (hitting again yellow shift (or f) brings back the A..Z annonciator)
You can then key "." + "X" ("2" key) or "Y" ("3" key) or "Z" ("0" key) or "T" ("4" key) or "L" ("TAN" key) (when there is no A..Z annonciator) (the "." keeps the A..Z annonciator off)

So for example
DSE ST X is keyed g DSE f . X
ST+ ST Y is keyed STO + f . Y

Remark : There is no problem in using keys 2, 3, 0 and 4 because there is no "0 to 9" and ".0 to .9" usage with these instructions
Sincèrement, Sincerely, 73,
Boubker

DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
redglyph
Posts: 177
Joined: Sat Dec 22, 2018 11:45 am

Re: What HP32SII improvements (in DM32) would you like ?

Post by redglyph »

Linus_Sch wrote:
Wed Sep 28, 2022 12:38 am
The one big advanced feature that does make sense (to me) is to simply go for arbitrary length alpha labels as a solution to the label problem. Keep single letter labels working as-is, enabling quick and unaltered access to those. When entering a label, in addition to the A-Z annunciator put one that says LONG next to one of the top row keys. After pressing that the user can enter any number of letters, ending it by pressing the same key again. If in a situation where choosing from existing labels then a pop-up box showing the available matches with the letters so far entered and being able to choose between them without entering all the letters would be neat.

Then again, I'm not sure that would be the best solution. It may make more sense to keep labels working as-is, no extension whatsoever, and just make sure that it is really convenient to load and store program state separately from other state in the setup menu - with arbitrary file names and easy transfer and sharing and such. Let that be "one program", thus the global labels as-is are used as local labels for each program. Cache a few of the most recently and a few of the most frequently used programs in RAM.

Replacing . and , with simply going to three digit line numbering when needed seems like a no-brainer to me, just do it.
That seems to mirror what Boub65 and I suggested too, hopefully it's not seen as a complexification of the HP-32Sii. :)

The load/save independent from the settings would be a big improvement IMO. I'd put that as an option when saving and reloading a state file.
rprosperi wrote:
Tue Sep 27, 2022 11:57 pm
It seems to me that if one wants these extra 'power features' (e.g. Matrices, Complex, etc.) one is probably better off simply using a DM42 or DM41X which have more thorough support for such features, rather than trying to bolt-on some simplified version into the DM32, which is inherently simpler to use.
Then there is the development and validation time, it's not as if those features could be cherry-picked from an emulated ROM. Porting all the original features must already be a challenging task on its own. :D
rprosperi wrote:
Tue Sep 27, 2022 11:57 pm
And no, there will never be an unlimited stack in DM32. Not ever. :o See RPN/RPL war history for why... :lol:
It would make it incompatible!

Personally I don't often feel the need for unlimited stack except it's more comfortable in some cases, but I'm curious, is there any objective reason why not in general? Like the left/right side of arithmetic keys, it looks like an opinion debate that can never reach a conclusion. Is there a specific downside?
Linus_Sch
Posts: 60
Joined: Sun May 09, 2021 9:33 am

Re: What HP32SII improvements (in DM32) would you like ?

Post by Linus_Sch »

redglyph wrote:
Wed Sep 28, 2022 10:37 am
The load/save independent from the settings would be a big improvement IMO. I'd put that as an option when saving and reloading a state file.
I would strongly prefer having load/save program as a separate thing right next to load/save complete state, instead of as an option. With a separate folder on the filesystem where I can keep a library of programs, organised in subfolders, as files with no other state information in them.

To me, if done right i.e. convenient and fast enough, this replaces using labels to access different programs, even small ones. Sidestepping having to extend the label functionality. Given that I expect to use it that way, I don't want to do the mistake of accidentally overwriting the rest of the calculator state when I did not intend to.
User avatar
rudi
Posts: 415
Joined: Wed Nov 03, 2021 9:03 am
Location: Denmark
Contact:

Re: What HP32SII improvements (in DM32) would you like ?

Post by rudi »

My 50¢ on this take - I'll find the door myself on the way out :P
DM32-rbr_logkeys.jpg
DM32-rbr_logkeys.jpg (27.07 KiB) Viewed 2629 times
/Rudi

DM-42 (s/n 06999), HP-42S, HP-35s, HP-11c, HP-32SII (ex HP-41CV, ex HP-75C, ex HP-48G + a lot, really lot of a accessories)
Denmark
redglyph
Posts: 177
Joined: Sat Dec 22, 2018 11:45 am

Re: What HP32SII improvements (in DM32) would you like ?

Post by redglyph »

Linus_Sch wrote:
Wed Sep 28, 2022 12:56 pm
I would strongly prefer having load/save program as a separate thing right next to load/save complete state, instead of as an option. With a separate folder on the filesystem where I can keep a library of programs, organised in subfolders, as files with no other state information in them.

To me, if done right i.e. convenient and fast enough, this replaces using labels to access different programs, even small ones. Sidestepping having to extend the label functionality. Given that I expect to use it that way, I don't want to do the mistake of accidentally overwriting the rest of the calculator state when I did not intend to.
Just a separate program/setting would work too indeed, that's actually what I suggested in another thread some time ago.

Loading programs separately and keeping the current label system wouldn't really replace the convenience of having multiple programs in memory and meaningful names, I think. Some users would have to frequently reload the programs they need, and it would prevent them from building on other existing programs / subroutines.

On the other hand, if users want to keep their programs when loading a new one, it would mean a load operation that adds the program to the existing ones (or overwrites them) instead of erasing the whole catalog first. That would be the most convenient approach and I don't think it makes a big difference from a programming point of view, except maybe additional verifications (enough memory, overwriting existing programs).
J-F Garnier
Posts: 47
Joined: Sun Mar 11, 2018 5:37 pm
Location: France

Re: What HP32SII improvements (in DM32) would you like ?

Post by J-F Garnier »

I agree with Bob, SM should refrain to add (and us to ask for) too many extra features. The DM32 should not be a DM42 clone.

In my opinion, the DM32 should keep the simplicity of the 32S/SII, and add some improvements, keeping the spirit of the 32SII programming model.

So my priorities would be:
- top of the list: add more global labels. For instance lower-case LBL a to LBL z, the lower case characters keyed using a shift key. Still one-character labels.
- have a way to have 'local' labels LBL 0 to LBL 9 (or up to LBL 19 using the same trick as for SF or FIX to key in the '1' prefix). This may require independent programs à la 41C.
It was a real pain to have to use the scarce global labels on the 32SII to do a loop or skip a part of the code.
- same for the global variables: add lowercase variables a to z, keyed with e.g. RCL shift A..Z
- scratch variables 0 to 9 (possibly up to 19, see above). No need to make them really local, just for scratch use to avoid interfering with global variables when using temporary variables in a program.
- program lines up to 999 (per program).
- extra free memory mapped as a register pool with indirect access well above the indented (=even if not yet implemented) new direct variables, e.g. starting from index 100. It was a real flaw of the 32SII that the index was inside the indexed area.

Then nice to have features could be:
- more flags up to 19
- add the missing complex operations (in the 32SII complex operation mode), eg. CMPLX ASIN, ACOS, ...
- operations on the stack (e.g. RCL ST Z) would be nice but should not conflict with the new variable keystrokes (you can't do "RCL .Y" because "RCL ." is "RCL i" so you must use a shift key, that will be also used for the new variables). Otherwise better to abandon it.
- a second index j and indirect access (j) - an idea from the 35S, keyed for instance as shift i, shift (i).

Improvements we should not ask for:
- complex mode à la 42S: the way SM chose to emulate the 32SII display prohibits to display a full complex number on a stack level,
- nor the 15C complex mode, it would completely break the 32SII experience. It would be no sense to mimic the 32SII keyboard/display as close as does the DM32, and introduce such an incompatibility.
- matrix: definitively not. If you need it, use the DM42 it will be much more comfortable !
- of course no infinite stack, local variables or other "Plus42" features.

J-F
Boub65
Posts: 231
Joined: Tue Sep 12, 2017 4:34 pm
Location: Rabat, Morocco

Re: What HP32SII improvements (in DM32) would you like ?

Post by Boub65 »

Honestly... using heavily the DM15L... I think that 26 lablels A-Z plus 20 (local) labels 0-9 and .0-.9... "should" be enought!

The HP15C/DM15L uses only A-E, 0-9, .0-.9 and we do lot of things with only 25 labels...

Add the possibility to store/recall programs multiplies the labels effect.
Sincèrement, Sincerely, 73,
Boubker

DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Boub65
Posts: 231
Joined: Tue Sep 12, 2017 4:34 pm
Location: Rabat, Morocco

Re: What HP32SII improvements (in DM32) would you like ?

Post by Boub65 »

And BTW...
1) I think that any .0-.9 number can be keyed in using "." + 0-9 but should be displayed normaly as 10-19...

2) if we want more labels the dot can open a two (2) digits entry ( LBL _ _ ) rather than just one (1). Example :
LBL 1 is LBL 01
LBL . 0 1 is also LBL 01
LBL . 1 9 is LBL 19
LBL . 4 5 is LBL 45
Last edited by Boub65 on Wed Sep 28, 2022 3:58 pm, edited 1 time in total.
Sincèrement, Sincerely, 73,
Boubker

DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Post Reply