DM42pcm-3.20.8 released

Third parties may release their own firmware builds and announce them in this forum.

Please note that bugs found in these firmware releases should be posted in this same forum. SwissMicros provides no support for these firmware releases so in the event of a problem, please contact the author of the firmware in question.

When publishing your own build of the DM42 firmware, we require that you include a notice in your "About" screen informing the user that this version of the firmware is neither provided by nor supported by SwissMicros.
ljubo
Posts: 56
Joined: Sat Jun 20, 2020 1:46 pm
Location: Austria

DM42pcm-3.20.8 released

Post by ljubo »

Hi,

The new version of the "Persistent Custom Menu" firmware mod can be downloaded from the releases page. For more info please read README.md

Included changes:
  • Update to DM42-3.20 / free42 v3.0.5
See the full changelog here: CHANGELOG.md

Note: This firmware is neither provided by nor supported by SwissMicros

-Ljubo
HP-15C, DM15L, HP-35S, DM42
Peet
Posts: 205
Joined: Tue Sep 29, 2020 12:01 am
Location: Germany

Re: DM42pcm-3.20.8 released

Post by Peet »

That was fast, runs flawlessly so far. After the "stupid"(*) firmware got an update, now the good one too.

(*) In product-design this two things are very stupid:
a) an unused button if there is need for more direct accessable functions (e.g. in a car, the turn signal sholdn't be set only via a menu)
c) hide often used functions while prominent presenting rare ones (e.g. in a car, the ejection seat button is better kept under a cover than the horn button)

Thanks for this essential improvement of the original firmware.
My programmable calculators - former: CBM PR100, HP41CV, HP28S, HP11C - current: HP48G(256kB), HP35S, Prime, DM41X, DM42
ljubo
Posts: 56
Joined: Sat Jun 20, 2020 1:46 pm
Location: Austria

Re: DM42pcm-3.20.8 released

Post by ljubo »

Peet wrote:
Sat Sep 04, 2021 1:12 am
Thanks for this essential improvement of the original firmware.
You are welcome! :)

To add those 6 dedicated buttons was an excellent DM42 hardware design decision, however, the opportunity was completely missed by practically not making use of them - was kind of frustrating. Hope at some point in time pcm will find its way into original firmware…
HP-15C, DM15L, HP-35S, DM42
pipedwho
Posts: 10
Joined: Sat Feb 13, 2021 4:40 am

Re: DM42pcm-3.20.8 released

Post by pipedwho »

ljubo wrote:
Sat Sep 04, 2021 10:59 am
Peet wrote:
Sat Sep 04, 2021 1:12 am
Thanks for this essential improvement of the original firmware.
You are welcome! :)

To add those 6 dedicated buttons was an excellent DM42 hardware design decision, however, the opportunity was completely missed by practically not making use of them - was kind of frustrating. Hope at some point in time pcm will find its way into original firmware…
This has been my default firmware build. I agree, I hope this finds its way into the mainline DM42 firmware.
jwiede
Posts: 23
Joined: Mon Oct 18, 2021 11:17 pm
Location: San Jose, CA USA

Re: DM42pcm-3.20.8 released

Post by jwiede »

At first I loaded it solely for the L4STK-in-NSTK fix, and actually disabled the PCM.

Now, the more I use it, the more I agree: It should be the default behavior.

Thanks for the hard work!
DM42(ordered), DM16L(sn:4068)
Thomas Okken
Posts: 1029
Joined: Tue May 02, 2017 5:48 pm
Location: Netherlands
Contact:

Re: DM42pcm-3.20.8 released

Post by Thomas Okken »

Ljubo, would you be interested in sharing your patch for integration into Plus42? If I can make it so it can be turned on and off easily, I think it would make a very nice addition to the Plus42 UI.
ljubo
Posts: 56
Joined: Sat Jun 20, 2020 1:46 pm
Location: Austria

Re: DM42pcm-3.20.8 released

Post by ljubo »

Thomas Okken wrote:
Tue Jan 25, 2022 8:13 pm
Ljubo, would you be interested in sharing your patch for integration into Plus42? If I can make it so it can be turned on and off easily, I think it would make a very nice addition to the Plus42 UI.
Hi Thomas, yes, sure. Current implementation of pcm is working, however, it is quite a hack (quick and dirty) - I never really fully understood keyboard handling and even menu handing is a bit of mystery :) - in other words, some code review and hints how to do it better (properly) would be great.

What do you have exactly in mind - pcm code is available on GitHib, e.g. https://github.com/ljubo106/free42/tree/pcm-3.21.x
HP-15C, DM15L, HP-35S, DM42
Thomas Okken
Posts: 1029
Joined: Tue May 02, 2017 5:48 pm
Location: Netherlands
Contact:

Re: DM42pcm-3.20.8 released

Post by Thomas Okken »

ljubo wrote:
Sat Jan 29, 2022 12:01 pm
Current implementation of pcm is working, however, it is quite a hack (quick and dirty) - I never really fully understood keyboard handling and even menu handing is a bit of mystery :) - in other words, some code review and hints how to do it better (properly) would be great.
I feel the same way, actually! The keyboard and menu handling code is a big pile of one special case piled on top of the other, I never really made an effort to clean it up and make it rule-based. As long as I was only aiming to re-create the HP-42S, that approach made sense and flowed kind of naturally, but once I started adding a lot of new functionality, it became more and more apparent that this is not a very nice piece of code to work with. I am a bit reluctant to go in and clean it up, though, because it does work...

Maybe I'll spend some time this summer to clean things up. If I ever decide to add more types, it would really be nice to have more structured logic to work with, since adding types right now just creates more and more complexity.

It for now, maybe I could merge the permanent-CUSTOM code base into master, if it can be done in a way that it is an option that can be turned on and off at any time, with a switch in the Preferences dialog. I'm not familiar at all with the SwissMicros code, but if I could look at a diff between their version and your patched one, I could probably get a good idea of whether it makes sense to transplant, and if there are things that could be improved.
ljubo
Posts: 56
Joined: Sat Jun 20, 2020 1:46 pm
Location: Austria

Re: DM42pcm-3.20.8 released

Post by ljubo »

Thomas Okken wrote:
Sun Jan 30, 2022 12:16 am
ljubo wrote:
Sat Jan 29, 2022 12:01 pm
Current implementation of pcm is working, however, it is quite a hack (quick and dirty) - I never really fully understood keyboard handling and even menu handing is a bit of mystery :) - in other words, some code review and hints how to do it better (properly) would be great.
I feel the same way, actually!
:D
It for now, maybe I could merge the permanent-CUSTOM code base into master, if it can be done in a way that it is an option that can be turned on and off at any time, with a switch in the Preferences dialog.
This would be great, and if you add it to free42 it will maybe even find it's way to the official DM42 firmware. It is from begin on designed with a global variable that is controlling behavior - toggling "bool persistent_custom_menu" to true/false turns on/off pcm functionality - however, toggle in preferences GUI is not implemented (on DM42 I'm mapping it to an explicit calculator key).
I'm not familiar at all with the SwissMicros code, but if I could look at a diff between their version and your patched one, I could probably get a good idea of whether it makes sense to transplant, and if there are things that could be improved.
I created a new project https://github.com/ljubo106/free42-1/tree/pcm (pcm is a branch), it is based on your latest free42 master version. I have also created a pull request for eventual discussion https://github.com/thomasokken/free42/pull/38. The code compiles and runs on Linux (GTK), also, I have added a DM42 skin from https://github.com/StreakyCobra/dm42-skin for easier debugging of the functionality.
HP-15C, DM15L, HP-35S, DM42
Thomas Okken
Posts: 1029
Joined: Tue May 02, 2017 5:48 pm
Location: Netherlands
Contact:

Re: DM42pcm-3.20.8 released

Post by Thomas Okken »

Great, thank you! I'll take a look at it this week.

However, I am thinking of integrating this into Plus42, not Free42. I don't think having a permanent CUSTOM menu is very useful when you only have a two-line display. It's the extra space provided by the resizable display in Plus42 that got me interested.
Post Reply