Post Reply 
DB48X: HP48-like RPL implementation for DM42
10-26-2023, 06:32 PM
Post: #141
RE: DB48X: HP48-like RPL implementation for DM42
(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.

Greetings,
    Massimo

-+×÷ ↔ left is right and right is wrong
Visit this user's website Find all posts by this user
Quote this message in a reply
10-26-2023, 10:39 PM (This post was last modified: 10-26-2023 10:40 PM by c3d.)
Post: #142
RE: DB48X: HP48-like RPL implementation for DM42
(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.
Find all posts by this user
Quote this message in a reply
10-27-2023, 12:31 AM
Post: #143
RE: DB48X: HP48-like RPL implementation for DM42
(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...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...

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
11-02-2023, 02:45 AM
Post: #144
RE: DB48X: HP48-like RPL implementation for DM42
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
Find all posts by this user
Quote this message in a reply
11-05-2023, 12:26 PM
Post: #145
RE: DB48X: HP48-like RPL implementation for DM42
(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".

— Ian Abbott
Find all posts by this user
Quote this message in a reply
11-05-2023, 03:14 PM
Post: #146
RE: DB48X: HP48-like RPL implementation for DM42
(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.
Find all posts by this user
Quote this message in a reply
11-05-2023, 06:55 PM
Post: #147
RE: DB48X: HP48-like RPL implementation for DM42
(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).
Find all posts by this user
Quote this message in a reply
11-13-2023, 12:15 AM (This post was last modified: 11-13-2023 12:23 AM by c3d.)
Post: #148
DB48x v0.4.11 - Debugging, recursion, monetary units
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:

Find all posts by this user
Quote this message in a reply
11-13-2023, 01:41 AM
Post: #149
RE: DB48X: HP48-like RPL implementation for DM42
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?
Find all posts by this user
Quote this message in a reply
11-13-2023, 03:57 AM (This post was last modified: 11-13-2023 03:59 AM by spiff72.)
Post: #150
RE: DB48X: HP48-like RPL implementation for DM42
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.
Find all posts by this user
Quote this message in a reply
11-13-2023, 08:12 AM
Post: #151
RE: DB48X: HP48-like RPL implementation for DM42
(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.
Find all posts by this user
Quote this message in a reply
11-13-2023, 08:17 AM (This post was last modified: 11-13-2023 08:21 AM by c3d.)
Post: #152
RE: DB48X: HP48-like RPL implementation for DM42
(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.
Find all posts by this user
Quote this message in a reply
11-13-2023, 02:02 PM
Post: #153
RE: DB48X: HP48-like RPL implementation for DM42
(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.
Find all posts by this user
Quote this message in a reply
11-13-2023, 03:41 PM
Post: #154
RE: DB48X: HP48-like RPL implementation for DM42
@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!
Find all posts by this user
Quote this message in a reply
11-14-2023, 08:54 PM
Post: #155
RE: DB48X: HP48-like RPL implementation for DM42
(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.
Find all posts by this user
Quote this message in a reply
11-14-2023, 08:57 PM
Post: #156
RE: DB48X: HP48-like RPL implementation for DM42
(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".
Find all posts by this user
Quote this message in a reply
11-17-2023, 10:51 AM
Post: #157
RE: DB48X: HP48-like RPL implementation for DM42
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.
Find all posts by this user
Quote this message in a reply
11-17-2023, 03:19 PM
Post: #158
RE: DB48X: HP48-like RPL implementation for DM42
(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.
Find all posts by this user
Quote this message in a reply
11-17-2023, 06:46 PM
Post: #159
RE: DB48X: HP48-like RPL implementation for DM42
(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.
Find all posts by this user
Quote this message in a reply
11-20-2023, 08:57 AM
Post: #160
Release v0.5.0: Statistics and flags
https://github.com/c3d/DB48X-on-DM42/rel...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)
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 3 Guest(s)