HP Forums
DB48X: HP48-like RPL implementation for DM42 - Printable Version

+- HP Forums (https://www.hpmuseum.org/forum)
+-- Forum: Not HP Calculators (/forum-7.html)
+--- Forum: Not quite HP Calculators - but related (/forum-8.html)
+--- Thread: DB48X: HP48-like RPL implementation for DM42 (/thread-20157.html)

Pages: 1 2 3 4 5 6 7 8 9 10


RE: DB48X: HP48-like RPL implementation for DM42 - Massimo Gnerucci - 10-26-2023 06:32 PM

(10-26-2023 05:48 PM)Hans S. Wrote:  The Frankenstein creations lie untouched in a box, actually I should throw them all away too. The broken money counts for nothing compared to the constant annoyance.

A little biased, uh?
Tell us where you'll throw them, I believe someone will be happy to come to rescue.


RE: DB48X: HP48-like RPL implementation for DM42 - c3d - 10-26-2023 10:39 PM

(10-26-2023 05:48 PM)Hans S. Wrote:  Here - with the Swiss-Micros calculators - is a very big problem for me personally. There are too many shortcomings for the machines to be fun. I confess that the DM 42 S was my entry into the HP world. It was followed by DM 10L, DM 11L, DM 15 L, DM 41L. Nowadays I wouldn't buy any Swiss-Micros calculator no more. The DM 10L had the well-known problem with spots on the display. Of course, the oven method didn't work. So it was given to the electronic scrap. In the meantime I have many HP originals, and with this experience My Swiss-Micros models are nightmarish. Keys that are so hard to press that you are tempted to pick up a hammer, the constant fear that something is not working properly or will fall off soon, and last but not least the horrible tactile feeling when touching them, especially bad with the DM 42 S; the centre of gravity is completely different to the HP-original, somehow it is a brick, where with the original the weight, surface texture and the response behaviour of the key are the cause of everlasting joy. The Frankenstein creations lie untouched in a box, actually I should throw them all away too. The broken money counts for nothing compared to the constant annoyance.

I only have the DM32 and DM42, and I find them to be remarkably high quality, both from a software and hardware point of view. The keyboard is not as good as the HP48, but it's better than almost all other calculators I have (with the exception of the HP15C). Also, the DM42 calculator is much smaller, with a much better screen, and it both much lighter and more sturdy (metal instead of plastic). That makes the experience really good (from my point of view).

How much would you resell your SwissMicros calculators for? I'm especially interested in the DM41L, which last I checked (2 min ago) was out of stock on SwissMicros web site. Please contact me in a private message.


RE: DB48X: HP48-like RPL implementation for DM42 - rprosperi - 10-27-2023 12:31 AM

(10-26-2023 05:48 PM)Hans S. Wrote:  
(10-25-2023 09:57 PM)Helix Wrote:  I have to buy a Swissmicros calculator first, and it won't happen this year.

Here - with the Swiss-Micros calculators - is a very big problem for me personally. There are too many shortcomings for the machines to be fun. I confess that the DM 42 S was my entry into the HP world. It was followed by DM 10L, DM 11L, DM 15 L, DM 41L. Nowadays I wouldn't buy any Swiss-Micros calculator no more. The DM 10L had the well-known problem with spots on the display. Of course, the oven method didn't work. So it was given to the electronic scrap. In the meantime I have many HP originals, and with this experience My Swiss-Micros models are nightmarish. Keys that are so hard to press that you are tempted to pick up a hammer, the constant fear that something is not working properly or will fall off soon, and last but not least the horrible tactile feeling when touching them, especially bad with the DM 42 S; the centre of gravity is completely different to the HP-original, somehow it is a brick, where with the original the weight, surface texture and the response behaviour of the key are the cause of everlasting joy. The Frankenstein creations lie untouched in a box, actually I should throw them all away too. The broken money counts for nothing compared to the constant annoyance.

Best,

Hans

Wow, you've had unusually poor luck with SwissMicros' devices, I've not heard anyone having so many issues. Here's a couple easy suggestions if you are willing to get them working.

-- The early DM42 did indeed have hard-to-press and uneven keys, but this is easily resolved by replacing the keyboard foil, you can get one here:
https://www.swissmicros.com/product/dm42-replacement-foil-with-domes

-- The oven heating technique has worked perfectly for every other person that I've read that has tried it, you probably should try again. Most were skeptical, but all agreed the process does work. It's possible yours was somehow not fixable that way, in which case you could have requested a new LCD, which almost certainly would have been provided. Did you contact Michael to note that you tried the oven process and it did not help?

But it sounds like you've decided they are poor devices and have no interest in getting them working. If you do decide to get rid of them, I'd be more than happy to take them off your hands; I'll happily pay shipping to NY. Once in hand, I'll fix them and get them to people that would like to use them...


RE: DB48X: HP48-like RPL implementation for DM42 - c3d - 11-02-2023 02:45 AM

DB48X v0.4.9 is out, and has full support for HP48-style units, but modernized:
  • Has recent SI prefixes, Z (zetta), Y (yotta), R (ronna) and Q (quetta) for large scale, z (zepto), y (yocto), r (ronto) and q (quecto) for small scale.
  • Take into account the impact on unit conversions of the revised 2023 definition of the US Survey foot.
  • Use exact (fraction-based) conversions wherever possible. This notably matters for the conversions of pre-2023 US Survey units, where the ratio is 1_ft = 1200/3937_m, which is not well represented using decimal values.
  • Add computer-related units, like the byte, the bit, the baud, as well as a menu supporting these units.
  • In order to support the computer-related units better, also recognize the power-of-two variants, e.g. 1_kiB is 1024_B. Also recogize the K prefix in addition to k.


YouTube quick demo: https://youtu.be/_KXT2-JXN-w
https://youtu.be/_KXT2-JXN-w


RE: DB48X: HP48-like RPL implementation for DM42 - ijabbott - 11-05-2023 12:26 PM

(11-02-2023 02:45 AM)c3d Wrote:  In order to support the computer-related units better, also recognize the power-of-two variants, e.g. 1_kiB is 1024_B. Also recogize the K prefix in addition to k.

The IEC standard symbols for the binary prefixes "kibi", "mebi", etc. all have an initial capital, e.g. "Ki" for "kibi".


RE: DB48X: HP48-like RPL implementation for DM42 - Doug (NYC) - 11-05-2023 03:14 PM

(11-05-2023 12:26 PM)ijabbott Wrote:  The IEC standard symbols for the binary prefixes "kibi", "mebi", etc. all have an initial capital, e.g. "Ki" for "kibi".

Good point. SI units are case sensitive. M is mega and m is meters, for example. Same with K and kg.


RE: DB48X: HP48-like RPL implementation for DM42 - c3d - 11-05-2023 06:55 PM

(11-05-2023 03:14 PM)Doug (NYC) Wrote:  
(11-05-2023 12:26 PM)ijabbott Wrote:  The IEC standard symbols for the binary prefixes "kibi", "mebi", etc. all have an initial capital, e.g. "Ki" for "kibi".

Good point. SI units are case sensitive. M is mega and m is meters, for example. Same with K and kg.

Yes, but all except K match the SI decimal prefix, and K is not ambiguous (i.e. "Kg" cannot mean anything else).


DB48x v0.4.11 - Debugging, recursion, monetary units - c3d - 11-13-2023 12:15 AM

This release implements debugging, infinite RPL recursion, mixed fractions, customizable units cycling, and restores missing entries in the units menu.

New features:

Allow customization of Cycle for units (#534)
Allow infinite recursion in RPL code (#537)
RPL program and expression debugging (#552) including after EXIT
Mixed fractions such as 1 1/3 (#554)
BeepOn and SilentBeepOn features (#280)
ScreenCapture and keyboard shortcut (#434)

Bugs:

Accept 2.3 FIX and #0 Background (#557)
Do not parse 67.200525 as a decimal32 (#551)
Bump low battery voltage to 2.550V (#553)

Improvements:

Catalog shows all commands containing typed text (#556)
Reorganize the units menu (#550) and restore missing units
Remember menu page for LastMenu (#545)
SPC key inserts ; when inside parenthese (#499)
Settings are now entirely defined by ids.tbl (#294)
Improve user interface code consistency
Improve GC handling of "just-past-end-of-object" pointers
Remove the execute() RPL callback, rely on evaluate()
Optimize allocation of 1-byte vs 2-byte opcodes
Render abs as abs and not norm (accept norm while parsing)

Demo:




RE: DB48X: HP48-like RPL implementation for DM42 - Doug (NYC) - 11-13-2023 01:41 AM

Awesome pace of updates, thanks! No sooner than I updated to 0.4.10 earlier today this comes out. I'm updating my DM32 to DB50x 0.4.11 right now.

Does the QSPI change every time, by the way? I always update it, but don't know if it's necessary.

I did a few quick calculations after I finished loading 0.4.11, and it seems to work in this super minimal test. However, the display density seems to be a little bit lower now. Maybe there is more space between the stack levels and/or the fonts are bigger by default?


RE: DB48X: HP48-like RPL implementation for DM42 - spiff72 - 11-13-2023 03:57 AM

There seems to be a bug in the newest update where I am unable to load state files previously stored.

It happened after first loading the new update program, and also happens when I try to restore a state file after the calc is up and running.

The error says:
Error loading file
Too few arguments
executing store.

When I exit out of the state load screens, I see one of my folder names on the stack, and a "Store Error: Too few arguments".

EDIT: I just tried loading qspi and the prgm file again and still the same result.


RE: DB48X: HP48-like RPL implementation for DM42 - c3d - 11-13-2023 08:12 AM

(11-13-2023 03:57 AM)spiff72 Wrote:  There seems to be a bug in the newest update where I am unable to load state files previously stored.

It happened after first loading the new update program, and also happens when I try to restore a state file after the calc is up and running.

The error says:
Error loading file
Too few arguments
executing store.

When I exit out of the state load screens, I see one of my folder names on the stack, and a "Store Error: Too few arguments".

EDIT: I just tried loading qspi and the prgm file again and still the same result.

Sorry about that. I cannot easily reproduce. Can you please file a bug report (https://github.com/c3d/DB48X-on-DM42/issues) and share the content of the state file? Thank you in advance.


RE: DB48X: HP48-like RPL implementation for DM42 - c3d - 11-13-2023 08:17 AM

(11-13-2023 08:12 AM)c3d Wrote:  
(11-13-2023 03:57 AM)spiff72 Wrote:  There seems to be a bug in the newest update where I am unable to load state files previously stored.

It happened after first loading the new update program, and also happens when I try to restore a state file after the calc is up and running.

The error says:
Error loading file
Too few arguments
executing store.

When I exit out of the state load screens, I see one of my folder names on the stack, and a "Store Error: Too few arguments".

EDIT: I just tried loading qspi and the prgm file again and still the same result.

Sorry about that. I cannot easily reproduce. Can you please file a bug report (https://github.com/c3d/DB48X-on-DM42/issues) and share the content of the state file? Thank you in advance.

OK. I found a reproducer. It looks like it's a problem with parsing of subdirectories. See https://github.com/c3d/DB48X-on-DM42/issues/559.


RE: DB48X: HP48-like RPL implementation for DM42 - spiff72 - 11-13-2023 02:02 PM

(11-13-2023 08:17 AM)c3d Wrote:  
(11-13-2023 08:12 AM)c3d Wrote:  Sorry about that. I cannot easily reproduce. Can you please file a bug report (https://github.com/c3d/DB48X-on-DM42/issues) and share the content of the state file? Thank you in advance.

OK. I found a reproducer. It looks like it's a problem with parsing of subdirectories. See https://github.com/c3d/DB48X-on-DM42/issues/559.

I figured the subdirectories might be to blame after watching your demo video (and the fact that one of the subfolder names was left on the stack). I have 3 of them, and when it would attempt to restore, it would appear that the contents of the directory are in the vars menu. When I try to go up a level (with the UP command), they are all gone (vars menu is empty), and I can't get back to them.


RE: DB48X: HP48-like RPL implementation for DM42 - spiff72 - 11-13-2023 03:41 PM

@c3d:

Can you clarify how the units.csv file can be used? This may be a moot point for me at this point since I may revert back to v0.4.9 due to the state file restoration issue, but I am also interested in tinkering with the units to customize things to my liking.

Does the file just need to be downloaded from the repo and placed in a new folder called CONFIG on the FAT disk? Since it doesn't exist there now, I wasn't sure if maybe this folder and file were only modifiable at compile time, or if there was a "default" that applied if the file didn't exist.

Thanks!


RE: DB48X: HP48-like RPL implementation for DM42 - c3d - 11-14-2023 08:54 PM

(11-13-2023 02:02 PM)spiff72 Wrote:  
(11-13-2023 08:17 AM)c3d Wrote:  OK. I found a reproducer. It looks like it's a problem with parsing of subdirectories. See https://github.com/c3d/DB48X-on-DM42/issues/559.

I figured the subdirectories might be to blame after watching your demo video (and the fact that one of the subfolder names was left on the stack). I have 3 of them, and when it would attempt to restore, it would appear that the contents of the directory are in the vars menu. When I try to go up a level (with the UP command), they are all gone (vars menu is empty), and I can't get back to them.

The reason is that there was a bug in the new evaluation loop that causes directories to be evaluated immediately instead of being left on the stack. Evaluating a directory is interpreted as entering it. So you enter a temporary directory, and since it's not on the stack, as soon as you exit it, there is no reference left to it.

This is fixed in my dev branch. I think that I will do an out-of-cycle release to fix it.


RE: DB48X: HP48-like RPL implementation for DM42 - c3d - 11-14-2023 08:57 PM

(11-13-2023 03:41 PM)spiff72 Wrote:  @c3d:

Can you clarify how the units.csv file can be used? This may be a moot point for me at this point since I may revert back to v0.4.9 due to the state file restoration issue, but I am also interested in tinkering with the units to customize things to my liking.

Does the file just need to be downloaded from the repo and placed in a new folder called CONFIG on the FAT disk? Since it doesn't exist there now, I wasn't sure if maybe this folder and file were only modifiable at compile time, or if there was a "default" that applied if the file didn't exist.

Thanks!

Yes, this is exactly what needs to be done.

If the CONFIG/UNITS.CSV does not exist, then default units are used (from flash). If CONFIG/UNITS.CSV exists, it takes precedence (but the built-in units remain as a fallback).

So if your UNITS.CSV simply contains the "=Cycle" section, which given the usage you described to me, could be as simple as:

"=Cycle"
"mm", "in"
"in", "mm"

And then it would use the built-in definitions for "mm" and "in".


RE: DB48X: HP48-like RPL implementation for DM42 - n3mmr - 11-17-2023 10:51 AM

I looked into the git repo and the various .md files there.
I noticed a line or two mentioning the HP Prime G1 as one of the target HW devices.
Is that really true for DB48X?
That would be really nice, given I have a useless G1 in my desk which is in dire need of a new raison d'etre.


RE: DB48X: HP48-like RPL implementation for DM42 - Doug (NYC) - 11-17-2023 03:19 PM

(11-17-2023 10:51 AM)n3mmr Wrote:  That would be really nice, given I have a useless G1 in my desk which is in dire need of a new raison d'etre.

You can also install newRPL on the G1. I just did that the other day, although I like my DM32 + DB50x better so far.


RE: DB48X: HP48-like RPL implementation for DM42 - n3mmr - 11-17-2023 06:46 PM

(11-17-2023 03:19 PM)Doug (NYC) Wrote:  
(11-17-2023 10:51 AM)n3mmr Wrote:  That would be really nice, given I have a useless G1 in my desk which is in dire need of a new raison d'etre.

You can also install newRPL on the G1. I just did that the other day, although I like my DM32 + DB50x better so far.

So did I! And newrpl on the Prime G1 definitely needs more work to be useful.


Release v0.5.0: Statistics and flags - c3d - 11-20-2023 08:57 AM

https://github.com/c3d/DB48X-on-DM42/releases/tag/v0.5.0

This release provides statistics functions, scatter and bar plots, and flags.

New features:

* Statistics (#495) and linear regression (#569)
* File-based statistics (#571)
* `Sort`, `QuickSort`, `ReverseSort`, `ReverseQuickSort` and `RevList` (#572)
* Flags, i.e. `CF`, `SF`, `FS?`, etc (#43)
* Plot scaling commands such as `SCALE`, `CENTR`, `XRNG`, ... (#582)
* Add `CurveFilling` and `DrawPlotAxes` setting flags (#580)
* `ScatterPlot` (#577) and `BarPlot` (#579)

Bugs:

* Save settings enumerations as portable text (#565)
* Avoid infinite loop when reading at end of help file
* Repair behaviour of `-1 DIG`, broken by settings improvements
* Fix definition of `rpm` in units and units file
* Crash in `list::map` when called function errors out (#570)
* Fix editor horizontal movement when inserting commands (#576)
* Repair plotting demo (#583)
* Fix vertical position of axes in `DrawAxes` (#584)
* Very long drawing loop if `ppar` axes are backwards (#585)

Improvements:

* Sets editor selection correctly for command-line errors
* Ability to parse command and setting names in quotes, e.g. `'Radians'`
* Insert command names inside quotes (#575)
* Update documentation of implemented features (#569)
* Make `PlotParameters` a keyword (#578)