43S Alternative key layout --> WP43C

General discussion about calculators, Swiss Micros or otherwise
User avatar
Jaymos
Posts: 323
Joined: Sun Nov 04, 2018 6:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos » Sun Oct 06, 2019 9:28 am

I changed the 43C emulator keyboard to fully implement CTRL key functionality. So it does the normal expected CTRL-C and some more.

CTRL-H does hard copy to clipboard
CTRL-C does copy X to clipboard
CTRL-D does copy XYZT to clipboard
I also fixed a bug that made clipboard copy on Mac unreliable.

The latest pushed code does that.
Jaco Mostert
Elec Eng, South Africa
WP34C, HP42S, DM42 for complex math; 35S, 28C, 32Sii, WP34S, EL-506P, EL-W506, FX750P; owned FX702P & 11C; used 67 & 85. iOS: 42s (Byron), Free42, WP31S/34S, HCalc.
43S operators right. DM42 sn. 03818.

User avatar
Jaymos
Posts: 323
Joined: Sun Nov 04, 2018 6:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos » Sun Oct 06, 2019 12:43 pm

Dani R. wrote:
Sun Oct 06, 2019 8:48 am
Jaymos wrote:
Sun Oct 06, 2019 12:23 am
Dani R. wrote:
Sat Oct 05, 2019 9: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?


I recoded the Shift timing logic. I also increased restriction time from 0.5 to 0.6 sec, to give the slow DM42 on battery only a bit more chance.

It now activates [f][f][f] at any point in time - needs not be in shift clear state. Example, it can be in f for a few seconds and then if [f][f][f] within 0.6 sec, it will pop up HOME, and directly will cancel shift mode.

The settings are in change at the moment:
1. HOME.3 This switches on/off whether the HOME menu pops on/off within SH.3T timeout. This is a testing option, makes no sense in real life. Options 2 and 3 is all that needs changing.
2. SH.4s ShiftTimoutMode: This switches off the 4 second shift time-out
3. SH.3T. Home3TimerMode: This switches off the 600 ms triple shift timer

The actual HOME screen logic and EXIT also need revamping. It is frustrating at the moment. It must, and it will work the way we want to make it most practical.

The problem at the moment is that the original concept from 43S is hampering smooth navigation and accurate popping on/off of HOME. I will improve this logic as part of the HOME base screen concept, which is not yet working.

Code is uploaded.
Jaco Mostert
Elec Eng, South Africa
WP34C, HP42S, DM42 for complex math; 35S, 28C, 32Sii, WP34S, EL-506P, EL-W506, FX750P; owned FX702P & 11C; used 67 & 85. iOS: 42s (Byron), Free42, WP31S/34S, HCalc.
43S operators right. DM42 sn. 03818.

User avatar
Jaymos
Posts: 323
Joined: Sun Nov 04, 2018 6:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos » Sun Oct 06, 2019 9:24 pm

Status report

My last status report was 16 Sept 2019, just before Guenter went to HHC. Here Guenter's video is linked again at the bottom.

Firstly, the goods, upfront:

Dani's WP43S Layout1A Windows emulator compile: http://cocoon-creations.com/download/WP ... -10-06.zip

My DM42 WP43C Layout2 compile: http://cocoon-creations.com/download/43C_15L2.pgm


Secondly, make no mistake regarding the quality work that Martin is putting into this project. I am impressed time and again when his updates are coming through. Also make no mistake, the 43C is going nowhere without the work the main Dev team is putting in.

Thirdly, here so salient points from the "DONE" list. Where applicable the old TODO list (in previous status reports) reference numbers are quoted, and in some cases the # number which refers to the gitlab source issues listed on that site, https://gitlab.com/Jaymos/wp43c/issues:

DONE. Fixed bug in UNITS. to cancel the UNITS mode if ENG is chosen.
DONE. Fixed bug in SIGFIG (#8), to cancel the UNITS mode if ENG is chosen.
DONE. Win emulator: greek font too large. Fixed.
DONE. Bottom 4 menu items in ALPHA mode location too low. Fixed.
DONE. [f]CLR not working in AIM. Fixed.
DONE: Added ELEC menu with operators j, a and a.a. Parallel calculations. Star(Wye)/delta impedance conversion. Voltage and current symmetrical components conversion from 3x phases to 3x seq. components. Added: e^jΦ
DONE: Add CLRSTK into STK. Re-arranged STK.
DONE: Menu re-arrangements made to CPX.
DONE: As we have plenty space in the area underneath ENTER, I decided to change the labels on the layouts: REGS to REGS.V and FLAG.V to FLAGS.V
DONE: Bugfix on double tab [<-] DROP.
DONE: Numerous improvements behind the scenes on Alpha Input Mode AIM.
DONE: Context sensitive emulator changing names and labels when in Alpha mode, and in Greek mode.
DONE. 623. Find place for IP, >DP and >SP in menu. Temporarily placed into HOME. Changed both >SP and IP to << and >> see below.

DONE. 702. STAT menu: it makes more sense to have both E+ and E- on a primary FN1 and FN2. A solution would be to put E+ and E- next to one another on primary FN keys. Tried this. Changed back to original layout where E- is on f[E+].

DONE. Added CC, CC1 and COMPLEX. CC is original 43S complex entry. CC1 is CC without X & Y resister complex entry. COMPLEX is register only (42S style). Tested. CC1 was found not useful. As default, CC replaces in USER mode on E+ (top left). Strict HP42S style complex entry using the default COMPLEX.

DONE. Added D% to the FIN menu

DONE. Added a function (currently on USER key) [>>] which does automatic type conversion (UP SCALE):
if Angle mode: change to SP or DP as applicable using .d.
If SHORTINT: change to SP
if SP: change to DP
if DP: change to LONGINT
if ComplexSP change to ComplexDP

DONE. Added a function (currently on USER key) [<<] which does automatic type conversion (DOWN SCALE):
if Angle mode: change to SP or DP, as applicable using .d
If LONGINT: change to DP
if DP: change to SP
if SP: change to ShortInt
if ComplexDP change to ComplexSP

DONE. Assigned USER keys: E+: CC f[E+]: << g[E+]: >>
DONE. Copy X, Stack, Screen image and All registers to clipboard.
DONE. Fixed 43C emulator keyboard support to include conventional CTRL commands do do copy to clipboard.
DONE. Fixed GTK Mac clipboard reliability issue.
DONE: Pauli chimed in and fixed a fairly complex issue on Complex numbers, originating from the WP34S legacy, where he also fixed the bug there.
DONE: Martin started to implement more and more math functions on the 43S, which of course get transferred to the 43C as soon as they are done: FLOOR, CEIL,
DONE: Added setting options for the BASE HOME menu and BASE MyMENU. Flag are added but the code aint done.

Most important DONE: This usability modification is the Shift x 3 HOME screen activation. HOME screen activation now only happens if 3 x shifts within 0.6 seconds is detected. After 0.6 seconds elapsed, detection will restart at any time, before or after the 4 seconds shift time-out. Once HOME is detected, the shift status is cancelled.

Most important TODO: Integrate the BASE menu concept. Setting options are done, but the code not. To sort out the integration of the HOME menu screen, MyMenu, with the original WP43S button menus. I need to review the integration of the soft menu tree with the button menu which mostly kills the softmenu stack when executed. This needs to change as it really upsets the logical and effective flow of menus, i.e. the return to the correct prior menu. I am sure this need collaborative effort on this forum.

Some perspective: I consider both of these items most important, because both of these speak to the core of the limitations that we have in the 43C. It is our choice to have this layout and a SINGLE shift key. It is VERY important to think and re-think, and smooth out what is required to operate this single shift button on a machine with three functions on each button. Also to use the technology of the menu system and the 6 FN keys, including the benefits of HOME, to navigate more easily, NOT more complexly, to get to a level of smooth usability that we need.



Guenther's WP43C talk at HHC: https://www.youtube.com/watch?v=s5GN1Jz3RpA

My demo video of the WP43C: https://youtu.be/ty1Oz91Xw1Y

WP43C emulator showing the default USER mode buttons:
Image

WP43C Layout1A emulator layout, including the clipboard control:
Image
Jaco Mostert
Elec Eng, South Africa
WP34C, HP42S, DM42 for complex math; 35S, 28C, 32Sii, WP34S, EL-506P, EL-W506, FX750P; owned FX702P & 11C; used 67 & 85. iOS: 42s (Byron), Free42, WP31S/34S, HCalc.
43S operators right. DM42 sn. 03818.

User avatar
Jaymos
Posts: 323
Joined: Sun Nov 04, 2018 6:03 pm
Location: Cape Town

Re: 43S Alternative key layout --> WP43C

Post by Jaymos » Mon Oct 14, 2019 10:30 pm

We have some WP43C work that can be tested and commented on:

New emulator http://www.cocoon-creations.com/downloa ... -10-14.zip

New DM42 image http://cocoon-creations.com/download/43C_16L2.pgm

The WP43S will provide functionality to re-assign keys in USER mode using the ASN command. This is not yet ready and according to the Gitlab site the 43S dev team is currently working on the CATALOG function. CATALOG, in my opinion, is essential for assigning a function to a key of choice. So it is coming.

ASN & USER will allow customisation of keys with arbitrary functions. In preparation for this functionality we investigated USER mode and identified and implemented draft functions that can already be useful:

USER MODE KEY ASSIGNMENT

WP43S will have an ASN command to allocate any function to almost any key on the keyboard. The first need we saw in addition to this was to have pre-set groups of keys for different applications, eg. WP43S key “packs” for various use cases. The cases currently identified were put onto a WP43C softmenu that is currently on the f[ASN] menu:
s0.png
s0.png (719 Bytes) Viewed 53 times
f[ASN] menu


The WP43C has the f[ASM] menu for USER mode key setup as below (“U” for USER mode in each case). The “packs” work like key bundles, assigning groups of USER mode keys: The 4 “packs” defined at the moment are in draft form, and sensible suggestions for more combinations will be considered:

Σ+ CC: CC on [Σ+], << on f[Σ+], >> on g[Σ+]
NORMAL mode [Σ+] is reset to Σ+.

ENTER^ CC: CC on g[ENTER], [Σ+] is left unchanged, << on f[Σ+], >> on g[Σ+]
NORMAL mode [Σ+] is set to MyMENU

SHIFT: TRIG on [SIN], f on [COS], g on [TAN], USER on f[SIN], RTN on g[SIN], USER on [Σ+]
f[Σ+] and g[Σ+] are left unchanged.
NORMAL mode [Σ+] is set to USER

RESET: Cancel ALL previous USER mode settings and
NORMAL mode [Σ+] is reset to Σ+.

FN.ASN: FN.ASN is a temporary function to assign a keyboard function to keys.
This will will be removed once the 43S ASN function supercedes it.
FN.ASN works by first asking for a function to be pressed on the keyboard, then asks for the key to be re-assigned. It is effective, but only useful for current keyboard function, i.e. it is only re-arranging the keyboard, not adding functions.
  • CC: The CC function is from the original WP43S, and does either interactive complex number entry or converts the X and Y registers to a complex number in X. The COMPLEX functionality on the WP43C does only the register conversion as per HP42S, hence the need to have CC available.
  • << and >>: Data type modifier keys, to easily change between:
    SHORTINT >> SP; SP >> DP; DP >> LONGINT
    DP << LONGINT; SP << DP; Shortint << SP
  • TRIG: is the WP43S TRI menu
  • SHIFTS: The WP43C is operated by the single shift key as opposed to the straight forward separate f and g keys on the WP43S. The effective double tap scheme was devised, but we thought of another option using USER keys, i.e. to provide a f and g key as USER mode keys on the SIN, COS & TAN buttons, functioning much like the shifts on the WP43S.
    6 f g keys.png
    6 f g keys.png (3.74 KiB) Viewed 53 times
NORMAL MODE E+ KEY ASSIGNMENT

In addition to the USER mode keys which are functional only in USER mode when the U is lit top right of the screen, we identified that a normal key should be available for re-assignment without the need to first go into USER mode.
On the DM42 the key I have long been targeting for the Σ+ for custom purposes, as this is the key that I have never used on both my HP42S and DM42. Furthermore, the STAT menu was recently thoroughly discussed on this forum, and it suffices to say on the WP43C there is a softmenu containing Σ+ and many more useful stats keys, so the Σ+ key can be optionally used for better purposes.
We introduced assignment of the NORMAL MODE Σ+ key for six settable options using the following softmenu accessed by f[ASN] g[FN1]:

The re-assignments possible are:
  • s1.png
    s1.png (1007 Bytes) Viewed 53 times
  • Σ+: To restore the original Σ+ function
  • USER, PRGM, ALPHA: To be able to effortlessly go to USER mode without a shift key
  • CC: WP43S CC command not on 43C keyboard
  • MyMENU: Non-shifted key for the future custom menu
The assignment status of the six options can be requested by a program using the appropriate question key. Integer 1 will appear on the stack if the key is selected, otherwise 0.


Ass additional information, a quick graphical overview is on this draft PDF page, but note that the menus of these images are slightly outdated. The concepts are well illustrated though. http://cocoon-creations.com/download/20 ... _draft.pdf
Jaco Mostert
Elec Eng, South Africa
WP34C, HP42S, DM42 for complex math; 35S, 28C, 32Sii, WP34S, EL-506P, EL-W506, FX750P; owned FX702P & 11C; used 67 & 85. iOS: 42s (Byron), Free42, WP31S/34S, HCalc.
43S operators right. DM42 sn. 03818.

Post Reply