HP Forums
[Free42] DSE bug - 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: [Free42] DSE bug (/thread-8804.html)



[Free42] DSE bug - Werner - 08-09-2017 08:50 PM

Hello Thomas,

1e19
DSE ST X

skips and adds 8 instead of subtracting 1 (and not skipping).
I use that all the time as a shortcut for 1 -. Old habits die hard.
Up till 1e18 it's ok, 1e19 and up is wrong.

Cheers, Werner
(latest version 2.0.5. Of course)


RE: [Free42] DSE bug - Dieter - 08-09-2017 09:00 PM

(08-09-2017 08:50 PM)Werner Wrote:  1e19
DSE ST X
skips and adds 8 instead of subtracting 1 (and not skipping).
(...)
(latest version 2.0.5. Of course)

FWIW: my Free42 Decimal version 1.5.5 from 2014 behaves the same.

Dieter


RE: [Free42] DSE bug - Thomas Okken - 08-10-2017 01:52 AM

(08-09-2017 08:50 PM)Werner Wrote:  Hello Thomas,

1e19
DSE ST X

skips and adds 8 instead of subtracting 1 (and not skipping).
I use that all the time as a shortcut for 1 -. Old habits die hard.
Up till 1e18 it's ok, 1e19 and up is wrong.

Cheers, Werner
(latest version 2.0.5. Of course)

The DSE and ISG code uses a 64-bit integer while breaking up the control variable into its components. That works fine in Free42 Binary, but can fail in Decimal, since the Decimal versions (both BCD20- and Intel-based) can represent integers that don't fit in 64 bits.

I'll fix this in 2.0.6.

I guess I should also take a look at the other functions that break up numbers in this manner, like HMS+. Seems unlikely to cause problems in practice, but a bug is a bug is a bug!


RE: [Free42] DSE bug - Thomas Okken - 08-13-2017 03:40 AM

I fixed ISG and DSE in the Decimal versions.

→HMS, →HR, HMS+, and HMS- didn't have this 64-bit int issue, so those are unchanged.


RE: [Free42] DSE bug - Werner - 08-13-2017 07:55 AM

Thanks, Thomas!
Werner