WP43 Alternative key layout --> C43

This area is for discussion about these families of custom high-end Scientific Calculator applications for SwissMicros devices.
User avatar
Jaymos
Posts: 1634
Joined: Sun Nov 04, 2018 7:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos »

Dani R. wrote:
Sat Oct 05, 2019 3:51 pm
New old topic to discuss: Primary occupancy (), shifted occupancy (f) and double Shifted occupancy (g) is controlled by the shift key. If no key is pressed within 4 seconds after the last pressing of the shift key, the shift function is cancelled again.

The shift key is used for the menus (function keys F1..F6) as well as for the other keys. At the same time.

Difficulty, which I see now, I saw with the following use case. You have opened a menu, for example CNST. F6 returns 'c'. For whatever reason you press the shift key. Accidentally. You press the shift key twice again within 4 seconds. The menu disappears and HOME is toggled. Or you press the shift key. To find you way around the menu you need more than four seconds to press the right function key. You get the unshifted function delivered. You don't have the same problems with the WP43S in the same degree. But now it is clear to me why I already mentioned that you should not use the shift key in the menu as a pointer.

But at the moment I don't have the solution how to improve the ergonomics. I'm too lazy now to look for what I propagated. But I think you should generally scroll through the menus with the up/down buttons, just with an overflow. In contrast to the HP-42s you see several lines at once.

Like I said, new old topic to discuss.

I have come across this dilemma too and have thought of options. I can propose:

1. Restrict HOME activation to 3 shift taps are within 1 second, and remove the 4 sec time-out so that it cycles f-g-blank-f-g-blank...
(I already have code for double tap within 0.5 sec, on [<-], which does a DROP. It could be similar to that code and easy to try out). I like this, because on no other calculator there is a shift time-out. With this proposal, the time-out is on the special function HOME, not on the normal functions f and g.

or

2. Change the HOME key to double or triple tap on the [EXIT] key instead of on the [SHIFT] key. In a way HOME is relevant to the [EXIT] key, as [EXIT] also takes away menu screens. (This would need special code to counter the calculator removing the current menu for the first [EXIT] tap, but that is ok, I can do that.)

Any other options?
Jaco Mostert
Elec Eng, South Africa
https://47calc.com C47 (s/n 03818 & 06199), WP43 (0015). In box: HP42S, HP32Sii, WP34S&C, HP28C, HP35s, EL-506P, EL-W506, PB700; ex: FX702P, 11C, HP67 & HP85; iOS: 42s Byron, Free42+, WP31S/34S, HCalc.
Dani R.
Posts: 349
Joined: Fri May 05, 2017 10:23 pm

Re: 43S Alternative key layout --> WP43C

Post by Dani R. »

Actually, I think the idea of having a timeout for f/g is good. But it just bites with the menus, which I don't want to have a timeout for. So I'm currently for option 1. HOME can also be called from the keyboard if you can't get 3 shift taps within 1 second. On EXIT I would not occupy with further functionalities. There is then the danger that we switches off the calculator accidentally. With the emulator this means at the moment still that it would completely closed.

Jaymos wrote:
Sat Oct 05, 2019 4:20 pm
1. Restrict HOME activation to 3 shift taps are within 1 second, and remove the 4 sec time-out so that it cycles f-g-blank-f-g-blank...
(I already have code for double tap within 0.5 sec, on [<-], which does a DROP. It could be similar to that code and easy to try out). I like this, because on no other calculator there is a shift time-out. With this proposal, the time-out is on the special function HOME, not on the normal functions f and g.
C47(DM42) SN:00032 WP43 SN:00016
https://47calc.com
User avatar
Jaymos
Posts: 1634
Joined: Sun Nov 04, 2018 7:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos »

Dani R. wrote:
Sat Oct 05, 2019 11:10 am
For me, "Data Type Change" is a useful and good supplement. I think I would get along with this function. I had originally thought that in USER mode I would put '->SP' on g[SIN] and '->DP' on g[COS], but I like the assignment of '>>' and '<<' on f[Σ+] and g[Σ+].
I think I had the arrows on the wrong sides of one another, i.e. pointing the right way but swapped. Also in the softmenu. I changed it to be:

[<<] [>>] on f[E+] and g[E+] respectively, and also in the same sequence on the softmenu, i.e. [>DP] [<<] [>>] ...

See pic below.

I think this sequence is more intuitive with UP (>>) on the right hand side i.e. on g shift. In summary,

- "up" or ">>" meaning SHORTINT>>SP; SP>>DP; DP>>LONGINT
- "dn" pr "<<" meaning SHORTINT<<SP; SP << DP; DP << LONGINT;
Dani R. wrote:
Sat Oct 05, 2019 11:10 am
Concerning "Data Type Change" I could imagine that at the transition from DP to LONGINT the dialog "Are you shure?" appears if you lose decimal places. (And if we check the decimal places, do we then work with the rounded intermediate result in the display?) In general, I ask here the question whether we are the only two nerds who think these new functions are good. I would consider some more involvement from other potential WP43C users to be valuable.
Yes, I use the "DEC_ROUND_DOWN" function to go from DP to longint, and from SP to shortint. I think it is a good idea to ask for confirmation before loosing the fractional part. So I went ahead and implemented it at the underlined text above. The Y/N will only be asked if there is a fractional part that would be destroyed by the action. If no FP is there, no question will be asked.

Dani R. wrote:
Sat Oct 05, 2019 11:10 am
Regarding the STAT menu I don't see any compelling reason to change it yet. I think all functions are there. I'm not a mathematician myself and therefore can't judge this conclusively. But I think that Walter had something in mind when he built this menu.
It was me who instigated the whole E+ E- discussion, and the facts are now:

- I have tried the changed softmenu, and also tried to imagine how it will be typing in data and removing some points.
- Walter's argument is that all previous calculators had E- on f[E+] and that it "shall be like that".
- Somebody said that this function is not used very often and I agree with that.
- On the DM42, we have the real button E+ sitting directly below FN1, and on the 43C Layout2, we have the real yellow label "E-" showing. There, it would look silly to have the real E- on f[E+] while just above it we have FN1 and FN2 with E+ and E- respectively, horizontally next to one another.
- Dani said Walter may have had a point with the layout, and I agree.
- I have received no other comments liking or disliking the proposed STAT menu change.

Therefore, I see no benefit except perceived symmetry to change it, so I change it back to Walter's layout and conclude the experiment.

See below how it looks back normal, and also with the USER mode activated with the default USER mode labels indicated.


Code uploaded to Import5. I also imported Pauli's bugfix for the complex math, which Martin integrated into 43S.
-
Clipboard01.png
Clipboard01.png (106.14 KiB) Viewed 4477 times
Jaco Mostert
Elec Eng, South Africa
https://47calc.com C47 (s/n 03818 & 06199), WP43 (0015). In box: HP42S, HP32Sii, WP34S&C, HP28C, HP35s, EL-506P, EL-W506, PB700; ex: FX702P, 11C, HP67 & HP85; iOS: 42s Byron, Free42+, WP31S/34S, HCalc.
Dani R.
Posts: 349
Joined: Fri May 05, 2017 10:23 pm

Re: 43S Alternative key layout --> WP43C

Post by Dani R. »

You make me flash my DM42 over and over again, but this "Data Type Change" is fun and I have to try it on the DM42.

(The emulator is also ready, of course.)
C47(DM42) SN:00032 WP43 SN:00016
https://47calc.com
User avatar
Jaymos
Posts: 1634
Joined: Sun Nov 04, 2018 7:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos »

Dani R. wrote:
Sat Oct 05, 2019 5:56 pm
Actually, I think the idea of having a timeout for f/g is good. But it just bites with the menus, which I don't want to have a timeout for. So I'm currently for option 1. HOME can also be called from the keyboard if you can't get 3 shift taps within 1 second. On EXIT I would not occupy with further functionalities. There is then the danger that we switches off the calculator accidentally. With the emulator this means at the moment still that it would completely closed.
I implemented the following.

Comments please.

Pressing three quick shifts [f/g] [f/g] [f/g] within 0.5 seconds will bring up the HOME menu as previously.
- The 0.5 second restriction can be switched off with option "SH.3T" (Shift Triple Timer).
- The fact that triple shift brings up HOME can also be switched off with option "HOME.3" (Home triple shift).

If you miss the 0.5 sec timer, or if "HOME.3" is not set, then you get into standard shift mode, which means [f/g] changes from f to g to blank.
- That means that if you accidentally press f, just press [f/g] again (twice) to clear shifts.

If you press a shift, and leave it for 4 seconds, it times out and clears all shifts.
- This 4 second timeout can be switched off with "SH_4s".

To get to the mode settings: [f][CHS] to get to MODE. Then [Up][Up] to get to the settings.

When changing a setting, say HOME.3, it will display true or false indicating the current mode.
All settings can be queried (for the future ability that your program can determine the actual mode status) by pressing say "HOME.3?" which will put either a 1 or 0 as longint, onto the stack.

Code uploaded to Gitlab. Remember to delete backup.bin.
DM42 image: http://cocoon-creations.com/download/43C_14L2.pgm, remember to to a reset f[CLEAR] g[RESET] as the defaults and options changed.

Comments on the concepts please.

.
Clipboard02.png
Clipboard02.png (1.42 KiB) Viewed 4465 times
Last edited by Jaymos on Sat Oct 05, 2019 10:11 pm, edited 2 times in total.
Jaco Mostert
Elec Eng, South Africa
https://47calc.com C47 (s/n 03818 & 06199), WP43 (0015). In box: HP42S, HP32Sii, WP34S&C, HP28C, HP35s, EL-506P, EL-W506, PB700; ex: FX702P, 11C, HP67 & HP85; iOS: 42s Byron, Free42+, WP31S/34S, HCalc.
User avatar
Jaymos
Posts: 1634
Joined: Sun Nov 04, 2018 7:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos »

I forgot to link the DM42 executable. I'll edit the previous post.

http://cocoon-creations.com/download/43C_14L2.pgm
Jaco Mostert
Elec Eng, South Africa
https://47calc.com C47 (s/n 03818 & 06199), WP43 (0015). In box: HP42S, HP32Sii, WP34S&C, HP28C, HP35s, EL-506P, EL-W506, PB700; ex: FX702P, 11C, HP67 & HP85; iOS: 42s Byron, Free42+, WP31S/34S, HCalc.
Dani R.
Posts: 349
Joined: Fri May 05, 2017 10:23 pm

Re: 43S Alternative key layout --> WP43C

Post by Dani R. »

My current test setup:
eRPN: false
HOME: true
aHome: true
SH_4s: false
MYMENU: false
MYa: false
HOME.3: true
SH.3T: true

When I have opened a menu, I now have much less problems with the shift key, the menu is closed much less often. I have to press the shift key three times within 0.5 seconds to delete the menu "unintentionally".

Activating the HOME menu by pressing the Shift key three times only works if you start with 'blank'. So press the Shift key once, think about it, I want to open the HOME, and then press the Shift key three times doesn't work.

The SH_4s switch has no effect, the timeout always remains. (Better said, in the previous version, when I had finally discovered the switch, switching off the timeout was possible.)

EDIT: When SH3.T: false, then SH_4s switch is working again, but then I have again the problem with the closing menus.
C47(DM42) SN:00032 WP43 SN:00016
https://47calc.com
User avatar
Jaymos
Posts: 1634
Joined: Sun Nov 04, 2018 7:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos »

Dani R. wrote:
Sat Oct 05, 2019 11:30 pm
Activating the HOME menu by pressing the Shift key three times only works if you start with 'blank'. So press the Shift key once, think about it, I want to open the HOME, and then press the Shift key three times doesn't work.
The concept is to bring up the HOME menu WHEN it clears the flags. So, more accurately, the HOME activation works as follows:
If you reach SHIFT CLEAR within 500 ms, then pop up HOME.
If you start a shift, and miss the 500 ms mark, then the detection only starts again from the point where the flags are clear.
Do you think it would be better to detect the shift key operation, at any point in the shift cycle, for 3 shifts within 500 ms? I think that sound better.
Dani R. wrote:
Sat Oct 05, 2019 11:30 pm
The SH_4s switch has no effect, the timeout always remains. (Better said, in the previous version, when I had finally discovered the switch, switching off the timeout was possible.)

EDIT: When SH3.T: false, then SH_4s switch is working again, but then I have again the problem with the closing menus.
I will look at the logic. Maybe I made a mistake.
If however I do the separate 3 shift detection mentioned above, I must change the logic not use the same timer conditions as the shift time-out.
I think that will be better.
Jaco Mostert
Elec Eng, South Africa
https://47calc.com C47 (s/n 03818 & 06199), WP43 (0015). In box: HP42S, HP32Sii, WP34S&C, HP28C, HP35s, EL-506P, EL-W506, PB700; ex: FX702P, 11C, HP67 & HP85; iOS: 42s Byron, Free42+, WP31S/34S, HCalc.
Dani R.
Posts: 349
Joined: Fri May 05, 2017 10:23 pm

Re: 43S Alternative key layout --> WP43C

Post by Dani R. »

Jaymos wrote:
Sun Oct 06, 2019 2:23 am
Dani R. wrote:
Sat Oct 05, 2019 11:30 pm
Activating the HOME menu by pressing the Shift key three times only works if you start with 'blank'. So press the Shift key once, think about it, I want to open the HOME, and then press the Shift key three times doesn't work.
The concept is to bring up the HOME menu WHEN it clears the flags. So, more accurately, the HOME activation works as follows:
If you reach SHIFT CLEAR within 500 ms, then pop up HOME.
If you start a shift, and miss the 500 ms mark, then the detection only starts again from the point where the flags are clear.
Do you think it would be better to detect the shift key operation, at any point in the shift cycle, for 3 shifts within 500 ms? I think that sound better.
I don't know if it's better, but it's more intuitive. You have one less condition to worry about.

Personally, I only want to call HOME when I'm in 'blank', 'MyMenu' or 'HOME'. But this is not an issue (anymore).
Generally the behaviour of the menus is confusing, e.g. if you call CNST indirectly via 'HOME' and then use EXIT you fall back on 'HOME'. If you call CNST directly with g[8] when 'HOME' is active, EXIT causes all menus to be deleted, you no longer fall back to 'HOME'. But this is probably the logic.
Question; Wasn't the idea that the switch HOME should causes the 'blank' menu to be replaced with the HOME menu?
C47(DM42) SN:00032 WP43 SN:00016
https://47calc.com
User avatar
Jaymos
Posts: 1634
Joined: Sun Nov 04, 2018 7:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos »

Dani R. wrote:
Sun Oct 06, 2019 10:48 am
Jaymos wrote:
Sun Oct 06, 2019 2:23 am
Dani R. wrote:
Sat Oct 05, 2019 11:30 pm
Activating the HOME menu by pressing the Shift key three times only works if you start with 'blank'. So press the Shift key once, think about it, I want to open the HOME, and then press the Shift key three times doesn't work.
The concept is to bring up the HOME menu WHEN it clears the flags. So, more accurately, the HOME activation works as follows:
If you reach SHIFT CLEAR within 500 ms, then pop up HOME.
If you start a shift, and miss the 500 ms mark, then the detection only starts again from the point where the flags are clear.
Do you think it would be better to detect the shift key operation, at any point in the shift cycle, for 3 shifts within 500 ms? I think that sound better.
I don't know if it's better, but it's more intuitive. You have one less condition to worry about.
I am busy changing it to take any three rapid shifts, not only after f, g, blank. Later today will send response.
The idea is now that any three shifts within 500 ms will reset the shifts and bring up HOME.
Dani R. wrote:
Sun Oct 06, 2019 10:48 am
Generally the behaviour of the menus is confusing, e.g. if you call CNST indirectly via 'HOME' and then use EXIT you fall back on 'HOME'. If you call CNST directly with g[8] when 'HOME' is active,
This is the way 43S did it (without HOME). That is, a menu from a key starts new, and clears the menu "stack", while a menu from a menu item is in the stack and EXIT returns.
Dani R. wrote:
Sun Oct 06, 2019 10:48 am
EXIT causes all menus to be deleted, you no longer fall back to 'HOME'. But this is probably the logic.
EXIT returns.
See [FIN] [TVM] EXT, this is as planned by 43S.
See HOME f[FN4] EXIT.
Dani R. wrote:
Sun Oct 06, 2019 10:48 am
Question; Wasn't the idea that the switch HOME should causes the 'blank' menu to be replaced with the HOME menu?
Yes, but I have not done that yet.
I need to carefully find a way to have a menu stay on the last layer. I have not done that. It will take some time.
I am simmering on that, looking for a way.
Jaco Mostert
Elec Eng, South Africa
https://47calc.com C47 (s/n 03818 & 06199), WP43 (0015). In box: HP42S, HP32Sii, WP34S&C, HP28C, HP35s, EL-506P, EL-W506, PB700; ex: FX702P, 11C, HP67 & HP85; iOS: 42s Byron, Free42+, WP31S/34S, HCalc.
Post Reply