WP34S for the DM42

This is where developers can exchange ideas and ask questions relevant to the DM42 firmware.

Please note that Swiss Micros staff are unable to provide answers here as a general rule. This is intended as a community-driven forum.
dlachieze
Posts: 289
Joined: Thu May 04, 2017 12:20 pm
Location: France

Re: WP34S for the DM42

Post by dlachieze »

Nigel (UK) wrote:
Sun Mar 28, 2021 10:12 pm
The latest version implements the top row more fully. Things like STO__, Sure? (Y/N), and catalogues now appear there rather than overwriting the y-register display.
Great, I like it !
Nigel (UK) wrote:
Sun Mar 28, 2021 10:12 pm
At present, YDOFF leaves the annunciators (etc.) in the top row. I may change this!
It's ok for me as it is, but I'm not using YDOFF a lot...
Nigel (UK) wrote:
Sun Mar 28, 2021 10:12 pm
Other points:
  • I've left the fgh shift where they are in alpha mode. They don't interfere with screenshots; the screenshot function cancels f-shift before taking the picture. This has been in place for a few "release" now.
My fault, I have not clearly explained the issue, so lets try again.
  • Enter Alpha mode and do CLα
  • Enter "ABCDEFGHIJKLMNOPQRST", the displays shows: "DEFGHIJKLMNOPQRST"
  • Press Up_Arrow, the displays shows: "ABCDEFGHIJKLMNOPQ" as expected
  • Now let say you want to take a screenshot and press Shift , this scrolls the display to the right and adds a small f at the end of string, so you cannot take a screenshot showing the beginning of the Alpha register, you always capture the end of the Alpha register
  • On the WP34S, it's different: enter "ABCDEFGHIJKL", the display shows "BCDEFGHIJKL", press Up_Arrow, the displays shows "ABCDEFGHIJK", now if you press f, g or h, the display doesn't scroll to the right and you don't see the f, g or h annunciator
One more note about Alpha mode, there is still a scrolling issue:
  • Enter "ABCDEFGHIJKLMNOPQ", this fills up the Alpha display
  • Press "R", the display scrolls by one character and shows "BCDEFGHIJKLMNOPQR", here the Up_Arrow is not working, and doesn't show the beginning of the string as expected
  • Press "S", the display scrolls again by one character and shows "CDEFGHIJKLMNOPQRS", the Up_Arrow is still not working, and doesn't show the beginning of the string as expected
  • Press "T", the display scrolls again by one character and shows "DEFGHIJKLMNOPQRST", and now the Up_Arrow is working, and shows "ABCDEFGHIJKLMNOPQ" as expected
Nigel (UK) wrote:
Sun Mar 28, 2021 10:12 pm
  • I've also left the variously-sized annunciators as they are for now, since that's what the real calculator does.
Now that there is a dedicated area for the annunciators, the date mode settings m.dy and y.md can be indicated even when YDON is set, at the difference of the WP 34S.
Also the big G for Grad in this alpha area looks strange as we have RAD and 360 on the right as dedicated annunciators, but I understand why you want to keep compatibility with the 34S.
Nigel (UK) wrote:
Sun Mar 28, 2021 10:12 pm
  • Error messages from the file operations had indeed stopped working; I think that they are working again now.
Yes they are, when trying to save a program without a global label I get now an error message: "No such label".
Nigel (UK) wrote:
Sun Mar 28, 2021 10:18 pm
My suggestions:
  • INPUT to ALPHA
  • RPN to KEY
  • RCL to RUN
  • STO to WRT
  • 360 to DEG
Does anyone have any thoughts on this?
I was going to propose something similar for INPUT, RCL and 360. For STO as it indicates the programming mode I would propose PRGM (or PRG to stick with 3 letters) and I would not change RPN as it is referenced several times in the 34S manual, and I don't think KEY provides any better insight but I may be missing something here.
DM42: 00425 - DM41X: β00066
Nigel (UK)
Posts: 40
Joined: Fri Jul 21, 2017 11:08 pm

Re: WP34S for the DM42

Post by Nigel (UK) »

The latest release in the long_build branch has several changes:
  • The alpha scrolling problem is finally fixed (I hope!).
  • In alpha mode, pressing shift causes f, g, h to appear on the top row and not at the end of the alpha display. It also no longer causes a jump to the end of the display.
  • The top row now displays multiple annunciators at the same time - shift, complex, grad, double precision, and date mode.
  • I've changed 360 to DEG, INPUT to ALPHA, STO to PGM and RCL to RUN.
Nearly there now....

Nigel (UK)
dlachieze
Posts: 289
Joined: Thu May 04, 2017 12:20 pm
Location: France

Re: WP34S for the DM42

Post by dlachieze »

Nigel (UK) wrote:
Wed Mar 31, 2021 12:58 am
Nearly there now....
Almost there ... ;)
Nigel (UK) wrote:
Wed Mar 31, 2021 12:58 am
  • The alpha scrolling problem is finally fixed (I hope!).
  • In alpha mode, pressing shift causes f, g, h to appear on the top row and not at the end of the alpha display. It also no longer causes a jump to the end of the display.
  • The top row now displays multiple annunciators at the same time - shift, complex, grad, double precision, and date mode.
  • This is great, alpha mode is now working well for me and I like the way annunciators and YDON can coexist while keeping the WP34S spirit and style.
  • In PGM mode, pressing f or g displays the multiple annunciators on the second row, not the top row, replacing the current program instruction. I can't take a screenshot here as DISP cancels f-shift, which is normal.
  • In RPN mode pressing --> doesn't display --> on the top row as previously, and if we have the date format m.dy or y.md, pressing --> change this indicator from big font to small font.
    Before pressing -->:
    20210331-08231243.bmp
    20210331-08231243.bmp (12.31 KiB) Viewed 403 times
    After pressing -->:
    20210331-08230704.bmp
    20210331-08230704.bmp (12.31 KiB) Viewed 403 times
Nigel (UK) wrote:
Wed Mar 31, 2021 12:58 am
  • I've changed 360 to DEG, INPUT to ALPHA, STO to PGM and RCL to RUN.
  • Nice, PGM is better than PRG as I proposed.
  • RCL is effectively replaced by RUN when doing f CPX in the STAT menu, but when running a program, RCL is still displayed instead of RUN
Now, some comments on the menus as I feel there is room to make them even more useful:
  • --> menu: you have in the menu 2HMS and HMS2, did you consider having instead H.MS and H.d which are the WP34S corresponding keys or ->HMS and ->HR which are the functions executed?
  • Clear menu: there is room to fit the different Clear commands that are in the P.FCN catalog: CLPALL (Above CLProg), CLREGS (Above CLsigma), CLalpha (Above CLX), CLSTK to the right of CLX and CLALL above CLSTK
  • Flags menu: on the top line, there is room for some of the most used tests: FS? FC? x<? x<=? x>=? x>?
  • x<>y menu: there is room for the remaining exchange functions: y<> , z<>, t<> and <>
  • Program menu: as there is already DSE, ISG and GTO, I would like to see there some related functions I use regularly in programs: DEC, INC, BACK, SKIP
  • STAT and PROB menus: they may benefit also from additional functions in the menus but I don't know which ones to prioritize
  • Custom menu: currently no function, however having menus implemented and a CUSTOM menu key is tantalizing ! I understand that due to the way the different functions and catalogs are implemented in the WP34S, adding after the fact custom menus with key assignments as on the 42 could be a HUGE task and not in the scope of this port of the WP-34s calculator to the DM42. However there may be some simpler solutions to enable custom menus, such as defining a custom menu in a text file on the host computer , transferring it to the DM42 and loading it through the SETUP menu. In theory impact to the WP34S code could be minimal, different text files with different custom menus could be stored on the DM42 and loaded as needed. The text file could contain the menu keys with associated functions opcode, and could be generated either manually or via a program providing an easier user inferface.
    What do you think? Would it fit in your scope? Or is there any better/simpler alternative?
DM42: 00425 - DM41X: β00066
Nigel (UK)
Posts: 40
Joined: Fri Jul 21, 2017 11:08 pm

Re: WP34S for the DM42

Post by Nigel (UK) »

dlachieze wrote:
Wed Mar 31, 2021 6:06 pm
[*]In PGM mode, pressing f or g displays the multiple annunciators on the second row, not the top row, replacing the current program instruction. I can't take a screenshot here as DISP cancels f-shift, which is normal.
Fixed. In PGM mode the top line now shows the annunciator display. Things like STO_ and LBL_ continue to appear on the second line.
dlachieze wrote:
Wed Mar 31, 2021 6:06 pm
[*]In RPN mode pressing --> doesn't display --> on the top row as previously, and if we have the date format m.dy or y.md, pressing --> change this indicator from big font to small font.
Fixed. The top display isn't long enough for everything. Different annunciators appear at fixed places (so they don't jump around) and so there wasn't room for the arrow. I've set things up so that the date mode indication disappears when the arrow appears - this shouldn't matter, as the arrow is a temporary display.
dlachieze wrote:
Wed Mar 31, 2021 6:06 pm
[*]RCL is effectively replaced by RUN when doing f CPX in the STAT menu, but when running a program, RCL is still displayed instead of RUN
Sorry - no more RCL. It should be just RUN from now on!
dlachieze wrote:
Wed Mar 31, 2021 6:06 pm
Now, some comments on the menus as I feel there is room to make them even more useful:
[*]--> menu: you have in the menu 2HMS and HMS2, did you consider having instead H.MS and H.d which are the WP34S corresponding keys or ->HMS and ->HR which are the functions executed?
They are the functions ->HMS and HMS->; the "2" is supposed to remind you of "to". I don't know why I did this; I guess that I just didn't get around to looking up the code for "->". This is now fixed.

The rest of your suggestions are menu assignments rather than bugs. They are good, but I can't implement them immediately. One reason why this calculator works so well is that the underlying WP-34S code has been changed very little. There is a keyboard translation routine that takes DM42 keycodes and translates them into WP-34S keycodes and shift states. This means that if a function isn't on the WP-34S keyboard I have no way of calling it from a menu. Clearly there are ways around this - for example, LAST x, and the file operations - but these are handled as one-offs. What I need is a general way of sending an op-code to the WP-34S code. There's no fundamental problem here, but before implementing it I'd like to just tidy up what has been done so far, merging the two branches back together and updating the help file.

After a few days I should be ready to move onto updating the menus as you suggest. I agree that a custom menu would be nice; as you've noted, I've kept CUSTOM free for this!

Nigel (UK)
dlachieze
Posts: 289
Joined: Thu May 04, 2017 12:20 pm
Location: France

Re: WP34S for the DM42

Post by dlachieze »

It seems something is broken with the shift key handling in the latest build, I can't get access to the g menus and I have a lot of troubles with the shift functions.

EDIT: there must have been some corruption when I installed the new firmware, I went back to the previous build and it worked fine, and then I reinstalled the latest build and I don't have any issue anymore.
DM42: 00425 - DM41X: β00066
Nigel (UK)
Posts: 40
Joined: Fri Jul 21, 2017 11:08 pm

Re: WP34S for the DM42

Post by Nigel (UK) »

I've put up new versions which now include the expanded menus suggested by dlachieze. I haven't implemented a custom menu yet, but I still agree that it would be a good idea.

All builds - normal, long, and top - are now in the master branch. The gitlab front page has been updated to explain this.

I hope you enjoy the new versions, and that there aren't too many bugs left!

Nigel (UK)
dlachieze
Posts: 289
Joined: Thu May 04, 2017 12:20 pm
Location: France

Re: WP34S for the DM42

Post by dlachieze »

Thanks for the expanded menus ! I'm more inclined to use and test the top build than the two others as I think it makes a better usage of the DM42 screen. I understand the need of a normal build for strict compatibility with the WP 34S display but I'm not sure I see a use case for the long build without the top line. Anyway it's great to have the choice.

One question about the top version: is there a reason to hide the annunciators on the top line when going in Alpha mode?

Some comments on the expanded menus:
  • Flags menu: is there any reason why you put x>? on the left of x>=? I envisioned the tests going from < to <= to >= to > as numbers grow this is why I proposed the order: x<? x<=? x>=? x>?
  • x<>y menu: I don't see the <> stack shuffle function
  • In Alpha mode menus are not active, which means that CLα in the Clear menu is not active in Alpha mode (CLα in the Clear menu is still useful in program mode). Anyway almost all menu commands are not relevant in Alpha mode, so it may make sense to have a dedicated Alpha menu activated automatically in Alpha mode that could include some of the Alpha specific functions from the X-FCN catalog, for example it could be:

    Code: Select all

    αTIME αDATE αDAY αMONTH
    x->α  α->x  αIP	 αLENG	 -->	CPX
  • In Alpha mode --> and CPX top keys are not active, would it be possible that they open the related Alpha catalogs accessible with Shift --> and Shift CPX on the WP34S, in addition to Shift LN and Shift XEQ on the DM42?
One thing that I'm not sure about is how Shift works with HYP/HYP-1:
  • On the WP-34S if you press f HYP you get HYP on the screen, then pressing g you get HYP-1 on the screen, and you can swap between HYP and HYP-1 with the f and g prefix keys.
  • On the DM42, if you press Shift HYP you get HYP on the screen, pressing Shift two times for the g prefix doesn't display HYP-1, but if you press Shift HYP-1 and then Shift again you get HYP on the screen as on the WP-34S
I don't know if this could be considered as a bug or a side effect of the Shift mapping to the WP-34S prefix keys.

Last point, one thing that I noticed previously but didn't report: the pixels on the top line are square and not rectangular as on the second line. Is it something you did on purpose? Initially I was going to report it but then I got used to it and now I think it's a nice way to differentiate the top line reserved for annunciators from the second line for Alpha and Y-register display.
DM42: 00425 - DM41X: β00066
Nigel (UK)
Posts: 40
Joined: Fri Jul 21, 2017 11:08 pm

Re: WP34S for the DM42

Post by Nigel (UK) »

dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
Thanks for the expanded menus ! I'm more inclined to use and test the top build than the two others as I think it makes a better usage of the DM42 screen. I understand the need of a normal build for strict compatibility with the WP 34S display but I'm not sure I see a use case for the long build without the top line. Anyway it's great to have the choice.
I agree. However, it's no effort to maintain the "long" and "normal" versions.
dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
One question about the top version: is there a reason to hide the annunciators on the top line when going in Alpha mode?
I think this happens automatically. I didn't bother to override it because things like "D" or "G" or "y.md" don't matter in alpha mode, and the disappearance and reappearance of the top row provide useful visual feedback. I often forget to exit alpha mode otherwise.
dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
  • Flags menu:
    is there any reason why you put x>? on the left of x>=? I envisioned the tests going from < to <= to >= to > as numbers grow this is why I proposed the order: x<? x<=? x>=? x>?
I can easily change this. I see your logic; to me, my ordering makes sense, but I don't feel strongly!
dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
[*]x<>y menu: I don't see the <> stack shuffle function
An oversight on my part. I shall add it.
dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
[*]In Alpha mode menus are not active, which means that CLα in the Clear menu is not active in Alpha mode (CLα in the Clear menu is still useful in program mode). Anyway almost all menu commands are not relevant in Alpha mode, so it may make sense to have a dedicated Alpha menu activated automatically in Alpha mode that could include some of the Alpha specific functions from the X-FCN catalog, for example it could be:

Code: Select all

αTIME αDATE αDAY αMONTH
x->α  α->x  αIP	 αLENG	 -->	CPX
h-leftarrow executes CLα in alpha mode, just as on the WP34s. But in general I agree that having a specific alpha menu would be nice. I'll see what I can do. This might take a little longer than you might expect, because I have a horrible feeling that I haven't checked that date and time functions are working. I probably disabled them to begin with, so I need to look at this.
dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
[*]In Alpha mode --> and CPX top keys are not active, would it be possible that they open the related Alpha catalogs accessible with Shift --> and Shift CPX on the WP34S, in addition to Shift LN and Shift XEQ on the DM42?
Probably. I vaguely remember that there was a problem with this when I looked at it previously, but I can look at it again. I can't see why not!
dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
One thing that I'm not sure about is how Shift works with HYP/HYP-1:
[*]On the WP-34S if you press f HYP you get HYP on the screen, then pressing g you get HYP-1 on the screen, and you can swap between HYP and HYP-1 with the f and g prefix keys.
[*]On the DM42, if you press Shift HYP you get HYP on the screen, pressing Shift two times for the g prefix doesn't display HYP-1, but if you press Shift HYP-1 and then Shift again you get HYP on the screen as on the WP-34S
You are supposed to decide in advance which you want, and then press SHIFT followed by either HYP or HYP-1! I hadn't realised that HYP-1 changes to HYP when SHIFT is pressed. I'll try to stop this happening (confusing) but until then it's a feature, not a bug!
dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
Last point, one thing that I noticed previously but didn't report: the pixels on the top line are square and not rectangular as on the second line. Is it something you did on purpose? Initially I was going to report it but then I got used to it and now I think it's a nice way to differentiate the top line reserved for annunciators from the second line for Alpha and Y-register display.
Well spotted! It is deliberate; it is a slight difference only, but as you say I think it helps to indicate the slightly different roles of the two lines.

Thank you again for these helpful suggestions.

Nigel (UK)
dlachieze
Posts: 289
Joined: Thu May 04, 2017 12:20 pm
Location: France

Re: WP34S for the DM42

Post by dlachieze »

Nigel (UK) wrote:
Wed Apr 07, 2021 8:21 pm
dlachieze wrote:
Wed Apr 07, 2021 7:01 pm
  • it may make sense to have a dedicated Alpha menu activated automatically in Alpha mode that could include some of the Alpha specific functions from the X-FCN catalog, for example it could be:

    Code: Select all

    αTIME αDATE αDAY αMONTH
    x->α  α->x  αIP	 αLENG	 -->	CPX
h-leftarrow executes CLα in alpha mode, just as on the WP34s. But in general I agree that having a specific alpha menu would be nice. I'll see what I can do. This might take a little longer than you might expect, because I have a horrible feeling that I haven't checked that date and time functions are working. I probably disabled them to begin with, so I need to look at this.
The alpha date and time functions work, I have tested them. They took a value in X and convert it to an alpha string, for example with 7.042021 in X αDAY adds WED to the alpha register. But it would be nice at some point to have also the DATE and TIME functions working based on the DMCP date and time.
DM42: 00425 - DM41X: β00066
dlachieze
Posts: 289
Joined: Thu May 04, 2017 12:20 pm
Location: France

Re: WP34S for the DM42

Post by dlachieze »

I think I have found a bug : I can't enter the instruction LBL?->00 in program mode.

on the WP34S this is done with:
  • h TEST
  • L
  • XEQ // this will display: LBL?_
  • -> // adds ->: LBL?->_
  • 00 // shows: LBL?->00
on the DM42, I cannot enter -> after LBL?:
  • Shift Shift FLAGS
  • L
  • XEQ // this will display: LBL?_
  • -> // if I press the top row --> key I get LBL? 83, if I press the LN key nothing happens
However, pressing RCL followed by the top row key --> correctly displays RCL->_

EDIT: I have the same issue with all commands refering to a label, for example XEQ-> and GTO->, which both generate XEQ 83 and GTO 83 when pressing the --> top key, but also with f'(x), f''(x), SLV, integrate, SUM and PROD.

Btw in the Integrate menu, SUM calls the Prod function and PROD calls the Sum function...
DM42: 00425 - DM41X: β00066
Post Reply