Hi!
Whenever I get my hands on a new 41 calculator (let it be a real thing, an emulator or something else), I always try to download the PPC ROM and run the display test program ("DT").
On a real calculator, and on some PC emulators (like V41) this works fine, eg all segments are lit:
But on others, like the DM41X or the Android emulator go41cx, it only shows some of the segments:
(I would have expected that the alpha register would be the same as the original, the x-register is as expected.)
Is there someone who can explain this difference?
Best regards,
Thomas
Display test ... not 100% correct?
Display test ... not 100% correct?
[35/45/55/65/67/97/21/25/29C/31E/33E/38E/41C|CV|CX/71B/10C/11C/15C/16C/32SII/42S/28S/48GX/49G/35S/DM41X(#00456)]
(7397)[134]
(7397)[134]
Re: Display test ... not 100% correct?
Yes, this is not a bug or a problem, this is a result of the changes needed to implement the multi-line editor in PRGM mode.
You will likely recall that at the end of DT, the 41C is left in PRGM mode, requiring the user to press [PRGM] [R/S] to complete the test. Until the multi-line editor was refined for several 'cosmetic' changes, DT ran properly in the sense that the visual result was the same, with all LCD segments on. The emulation changes to create the appearance of multiple lines in PRGM interfere with what DT simplistically assumes.
Note the same is true is with the Alpha register display - most people never noticed the Alpha display was left filled with characters after DT was run, but this is revealed on the 41X's SI_XA view.
Good catch, thanks for checking this out, and sorry (actually I'm not) to swat the first bug report so quickly.
Enjoy your 41X!
You will likely recall that at the end of DT, the 41C is left in PRGM mode, requiring the user to press [PRGM] [R/S] to complete the test. Until the multi-line editor was refined for several 'cosmetic' changes, DT ran properly in the sense that the visual result was the same, with all LCD segments on. The emulation changes to create the appearance of multiple lines in PRGM interfere with what DT simplistically assumes.
Note the same is true is with the Alpha register display - most people never noticed the Alpha display was left filled with characters after DT was run, but this is revealed on the 41X's SI_XA view.
Good catch, thanks for checking this out, and sorry (actually I'm not) to swat the first bug report so quickly.
Enjoy your 41X!
--bob p
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
Re: Display test ... not 100% correct?
It was already reported by Geoff during the beta test viewtopic.php?f=26&t=2448
I think it was the only non resolved "bug".
I think it was the only non resolved "bug".
HP41C (2x), HP41CV, HP41CX, DM41X β, DM41X, DM42, HP11C, HP48G, HP97
Re: Display test ... not 100% correct?
Thank you!EM41 wrote: ↑Fri Oct 02, 2020 5:19 pmIt was already reported by Geoff during the beta test viewtopic.php?f=26&t=2448
I think it was the only non resolved "bug".
I remembered this was already addressed but couldn't find the thread.
The answer is the same: use DTST!
Greetings,
Massimo
ajcaton
-+×÷ left is right and right is wrong Casted in gold
Massimo
ajcaton
-+×÷ left is right and right is wrong Casted in gold
Re: Display test ... not 100% correct?
AND... thank you!! I could not recall the name/module for DTST, though I suppose it should be obvious enough...akaTB wrote: ↑Fri Oct 02, 2020 5:23 pmThank you!EM41 wrote: ↑Fri Oct 02, 2020 5:19 pmIt was already reported by Geoff during the beta test viewtopic.php?f=26&t=2448
I think it was the only non resolved "bug".
I remembered this was already addressed but couldn't find the thread.
The answer is the same: use DTST!
--bob p
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
-
- Posts: 795
- Joined: Wed May 03, 2017 7:46 pm
- Location: Malone, NY USA
Re: Display test ... not 100% correct?
Is this a hardware or a software issue?EM41 wrote: ↑Fri Oct 02, 2020 5:19 pmIt was already reported by Geoff during the beta test viewtopic.php?f=26&t=2448
I think it was the only non resolved "bug".
Tom L
Some people call me inept but I'm as ept as anybody!
DM10L SN: 059/100
DM41X SN: 00023 (Beta)
DM41X SN: 00506 (Shipping)
DM42 SN: 00025 (Beta)
DM42 SN: 00221 (Shipping)
WP43 SN: 00025 (Prototype)
Some people call me inept but I'm as ept as anybody!
DM10L SN: 059/100
DM41X SN: 00023 (Beta)
DM41X SN: 00506 (Shipping)
DM42 SN: 00025 (Beta)
DM42 SN: 00221 (Shipping)
WP43 SN: 00025 (Prototype)
Re: Display test ... not 100% correct?
It's not an issue at all. Run DTST in Angel's OSX module and you will see the expected result of ALL (emulation) LCD segments turned ON.toml_12953 wrote: ↑Fri Oct 02, 2020 10:57 pmIs this a hardware or a software issue?EM41 wrote: ↑Fri Oct 02, 2020 5:19 pmIt was already reported by Geoff during the beta test viewtopic.php?f=26&t=2448
I think it was the only non resolved "bug".
The DT program in the PPC ROM does the same thing on a real 41C, however it uses PRGM mode to accomplish that and on the 41X the multi-line editor prevents that approach from working the same way.
No issue here.... move along... move along...
--bob p
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
Re: Display test ... not 100% correct?
Hi again!
Sorry, I just can't just move on, leaving a stone unturned ...
I don't buy that this is due to the multiline edit in PRGM mode ...
Now, try this on your 41-device (needs eg. X-function):
[ALPHA] off
CLA
128 XTOA
58 XTOA
[ALPHA] on
Now, on my real 41CX I see 1 character with all segments turned on followed by a single colon - just as I expected.
On V41 by Furlow it shows the same, again as expected.
On the Android app go41cx by Olivier de Smet (very nice app IMHO!) it works partly:
As you see, the alpha register at the top shows the content as expected, but not when the alpha reg is shown in the display.
On the DM41X it is always shown as an append character followed by two colons.
Also, if you delete the characters, they are treated as separate characters in the display:
[ALPHA] off
CLA
128 XTOA
58 XTOA
129 XTOA
58 XTOA
[ALPHA] on
The dispaly now shows: "+: :a : :" (6 characters) where I would have expected only 4 characters: "#:#:"
('+' is the append character and '#' is a full segment).
(Also note that there is an extra space shown here after 'a' since the post sometimes treats ':' as an escape character when entering text).
Now try this (with alpha still on):
[shift][ASN] - append string --> "+: :a : :_"
[<--] - delete one character --> "+: :a :_"
[<--] - delete one character --> "+: :a_"
[<--] - delete one character --> "+: :_"
[<--] - delete one character --> "+:_"
So, I have deleted 4 characters, but "+:" is still shown in the display - even if alpha is empty (turn alpha on/off will clear what is shown).
My guess is that this is a bug in displaying characters with code larger than 127, and the bug is present in eg. go41cx (which doesn't have multiline edit) and is probably inherited somehow into DM41X since it is not present in the real device nor in eg. V41.
This is not a serious bug, it doesn't affect any data as far as I can see, only what is shown in the display but may show erronous results when dealing with characters codes above 127.
Best regards,
Thomas
Sorry, I just can't just move on, leaving a stone unturned ...
I don't buy that this is due to the multiline edit in PRGM mode ...
Now, try this on your 41-device (needs eg. X-function):
[ALPHA] off
CLA
128 XTOA
58 XTOA
[ALPHA] on
Now, on my real 41CX I see 1 character with all segments turned on followed by a single colon - just as I expected.
On V41 by Furlow it shows the same, again as expected.
On the Android app go41cx by Olivier de Smet (very nice app IMHO!) it works partly:
As you see, the alpha register at the top shows the content as expected, but not when the alpha reg is shown in the display.
On the DM41X it is always shown as an append character followed by two colons.
Also, if you delete the characters, they are treated as separate characters in the display:
[ALPHA] off
CLA
128 XTOA
58 XTOA
129 XTOA
58 XTOA
[ALPHA] on
The dispaly now shows: "+: :a : :" (6 characters) where I would have expected only 4 characters: "#:#:"
('+' is the append character and '#' is a full segment).
(Also note that there is an extra space shown here after 'a' since the post sometimes treats ':' as an escape character when entering text).
Now try this (with alpha still on):
[shift][ASN] - append string --> "+: :a : :_"
[<--] - delete one character --> "+: :a :_"
[<--] - delete one character --> "+: :a_"
[<--] - delete one character --> "+: :_"
[<--] - delete one character --> "+:_"
So, I have deleted 4 characters, but "+:" is still shown in the display - even if alpha is empty (turn alpha on/off will clear what is shown).
My guess is that this is a bug in displaying characters with code larger than 127, and the bug is present in eg. go41cx (which doesn't have multiline edit) and is probably inherited somehow into DM41X since it is not present in the real device nor in eg. V41.
This is not a serious bug, it doesn't affect any data as far as I can see, only what is shown in the display but may show erronous results when dealing with characters codes above 127.
Best regards,
Thomas
[35/45/55/65/67/97/21/25/29C/31E/33E/38E/41C|CV|CX/71B/10C/11C/15C/16C/32SII/42S/28S/48GX/49G/35S/DM41X(#00456)]
(7397)[134]
(7397)[134]
Re: Display test ... not 100% correct?
Still no-one who can explain why DM41X can't handle characters with code > 127 correctly in the display?
[ALPHA] off
CLA
128 XTOA
[ALPHA] on
This shows two characters (append sign and a colon) - but is should show (and is internally) only one character.
We can even delete one of these "two" characters:
(with alpha still on)
[shift] [ASN]
[<-]
The colon is deleted, and the append sign is still visible - but the alpha reg is actually empty (as it should be).
(with alpha still on in append mode)
[6] <-- Display now shows append sign followed by an 'X'
[shift] [VIEW]
X <-- We are left with only a 'X'
I still think this is the reason why the PPC ROM "DT" routine doesn't work - and that it is not related to multi line in PRGM mode - sorry ...
Would have been more fun if codes [128..255] had new characters assigned to them - an easy way to extend the possibilities (not backwards compatible - but at least we could do some "poor mans graphic") since I guess that the display driver is outside the actual ROM and is handled by the emulator within the DM41X ...
By no means complete .. just some examples:
Cheers,
Thomas
[ALPHA] off
CLA
128 XTOA
[ALPHA] on
This shows two characters (append sign and a colon) - but is should show (and is internally) only one character.
We can even delete one of these "two" characters:
(with alpha still on)
[shift] [ASN]
[<-]
The colon is deleted, and the append sign is still visible - but the alpha reg is actually empty (as it should be).
(with alpha still on in append mode)
[6] <-- Display now shows append sign followed by an 'X'
[shift] [VIEW]
X <-- We are left with only a 'X'
I still think this is the reason why the PPC ROM "DT" routine doesn't work - and that it is not related to multi line in PRGM mode - sorry ...
Would have been more fun if codes [128..255] had new characters assigned to them - an easy way to extend the possibilities (not backwards compatible - but at least we could do some "poor mans graphic") since I guess that the display driver is outside the actual ROM and is handled by the emulator within the DM41X ...
By no means complete .. just some examples:
Cheers,
Thomas
[35/45/55/65/67/97/21/25/29C/31E/33E/38E/41C|CV|CX/71B/10C/11C/15C/16C/32SII/42S/28S/48GX/49G/35S/DM41X(#00456)]
(7397)[134]
(7397)[134]
Re: Display test ... not 100% correct?
Another consequence this "bug" also have, is when viewing synthetic text-strings in programs.
Depending on the mode, a string is shown differently.
I created a program, just containing a string with the characters 128-142 (15 characters).
On a normal HP41 this line is (always) shown as a string with 15 full-segment characters.
01 LBL "TST"
02 "###############"
But on the DM41X it depends on the viewing-mode:
1. With one-line display (SI+AR) the string (in PRGM mode) is shown as:
02 "+ : a : b : c : d : e : ....." (append, colon and then a string with characters, all separated by colon)
2. In multiline mode a completly different string appears as follows: Note that these characters corresponds to character code 0-14
3. If the prgram-line is highlighted and [SHIFT] is pressed, then the display changes: 4. If you singlestep this line, so the string is added to the alpha register, then the "colon"'-string is shown as well.
This "soft-bug" has no serious implications, but when comparing a program listing between a HP41 and the DM41X, then synthetic string will most likely differs, both in program mode and what is shown in alpha register. Eg. when singlestepping the program, what is shown on the program line doesn't correspond to what will end up in the alpha register.
I have noticed that there are some new characters in the code range 128-255, eg. a delta (145), small sigma (149) as well as the all lower case letters (a-x), but they can only be used in the "colon" form:
[CLA]
168 XTOA
165 XTOA
172 XTOA XTOA
175 XTOA
AVIEW ---> "h:e:l:l:o :"
Now try entering that string in a program (needs a bytegrabber or other tool).
Then in multiline prgm-mode, highlight the line with this string and then press [SHIFT] ...
Notice how the display will toggle between "(%((/" and "h:e:l:l:o :" depending on if [SHIFT] is pressed or not ...
Depending on the mode, a string is shown differently.
I created a program, just containing a string with the characters 128-142 (15 characters).
On a normal HP41 this line is (always) shown as a string with 15 full-segment characters.
01 LBL "TST"
02 "###############"
But on the DM41X it depends on the viewing-mode:
1. With one-line display (SI+AR) the string (in PRGM mode) is shown as:
02 "+ : a : b : c : d : e : ....." (append, colon and then a string with characters, all separated by colon)
2. In multiline mode a completly different string appears as follows: Note that these characters corresponds to character code 0-14
3. If the prgram-line is highlighted and [SHIFT] is pressed, then the display changes: 4. If you singlestep this line, so the string is added to the alpha register, then the "colon"'-string is shown as well.
This "soft-bug" has no serious implications, but when comparing a program listing between a HP41 and the DM41X, then synthetic string will most likely differs, both in program mode and what is shown in alpha register. Eg. when singlestepping the program, what is shown on the program line doesn't correspond to what will end up in the alpha register.
I have noticed that there are some new characters in the code range 128-255, eg. a delta (145), small sigma (149) as well as the all lower case letters (a-x), but they can only be used in the "colon" form:
[CLA]
168 XTOA
165 XTOA
172 XTOA XTOA
175 XTOA
AVIEW ---> "h:e:l:l:o :"
Now try entering that string in a program (needs a bytegrabber or other tool).
Then in multiline prgm-mode, highlight the line with this string and then press [SHIFT] ...
Notice how the display will toggle between "(%((/" and "h:e:l:l:o :" depending on if [SHIFT] is pressed or not ...
[35/45/55/65/67/97/21/25/29C/31E/33E/38E/41C|CV|CX/71B/10C/11C/15C/16C/32SII/42S/28S/48GX/49G/35S/DM41X(#00456)]
(7397)[134]
(7397)[134]