Hi all,
still trying to calculate as many digits of PI as I can on my DMxxL calculators (especially that yesterday was PI day ).
On the DM15L, I was stopped by what could be a bug (or an undocumented limitation) on indirect adressing limited to 99 registers : see post viewtopic.php?f=11&t=1801
Now, on the DM41L, I was trying to compute 1160 digits of PI as documented in the famous HP41C article by Ron Knapp.
The famous article provides a 396 steps program (397 if you count the END instruction).
You need to do a "SIZE 238" on your DM41L to be able to compute the 1160 digits (you need in fact to access to 237th register on line .014).
But, impossible to do a "SIZE 238" (you get the "PACKING/TRY AGAIN" message)! the maximum that can be performed is "SIZE 237" which allows calculation of ONLY 1150 digits.
So I think, that there might be a problem in memory allocation on the DM41L that uses ONE (1) extra register VS HP41C.
Article and program can be found on Thomas Okken Free42 libraries (http://thomasokken.com/free42/42progs/index.html) under "pi_dec"
I don't have a HP41C to check it's behavior relative to the article.
PS: for those ( ) who will only read the title of the article that specify 1110 digits, the author says on top of the HP41C Code Listing "EXTENDED PRECISION - pi to 1160 places" and he gives later in the article the time to compute "1160 places in 15 1/2 hours".
Sincerely,
Boubker.
[DM41L] memory/register usage does not match HP41C (SOLVED)
[DM41L] memory/register usage does not match HP41C (SOLVED)
Last edited by Boub65 on Sat Mar 17, 2018 3:26 pm, edited 1 time in total.
Sincèrement, Sincerely, 73,
Boubker
DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Boubker
DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Re: [DM41L] memory/register usage does not match HP41C (?)
Key Assignments and Alarms also can take up RAM, so make sure there are none of those when you set SIZE.
Also, PACK (or GTO..) to be sure all slack space in the code is removed.
Worst case, set SIZE first, then enter the program. It's (generally speaking) far more likely the issue is one of these things than if the f/w is providing different RAM sizes than the real machine. But please note my use of the word likely...
--bob p
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
Re: [DM41L] memory/register usage does not match HP41C (?)
@rprosperi is probably right here.
The DM41L allocates memory within the emulated machine in exactly the same was as the HP-41CX does because it is using the ROM of that machine.
SIZE 238 should leave you with 81 registers of program space if there are no global key assignments and no alarms in place. CLKEYS and CLRALMS will take care of that for you.
The DM41L allocates memory within the emulated machine in exactly the same was as the HP-41CX does because it is using the ROM of that machine.
SIZE 238 should leave you with 81 registers of program space if there are no global key assignments and no alarms in place. CLKEYS and CLRALMS will take care of that for you.
There are only 10 kinds of people in the world: those who understand binary and those who do not.
Re: [DM41L] memory/register usage does not match HP41C (?)
@grsbanks and @rprosperi...
I did my tests after a Hard Reset.
Weird... will try again...
I did my tests after a Hard Reset.
Weird... will try again...
Sincèrement, Sincerely, 73,
Boubker
DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Boubker
DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Re: [DM41L] memory/register usage does not match HP41C (?)
There are only 10 kinds of people in the world: those who understand binary and those who do not.
Re: [DM41L] memory/register usage does not match HP41C (?)
@grsbanks...
You should do a SIZE 238 after loading the PI program (397 steps)...
You should do a SIZE 238 after loading the PI program (397 steps)...
Sincèrement, Sincerely, 73,
Boubker
DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Boubker
DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Re: [DM41L] memory/register usage does not match HP41C (?)
Don't type the final END. It's not needed if this is the only program in memory.
Here's a dump:
Here's a dump:
Code: Select all
DM41
08 4b000000000000 000000455a4953 0000000000c000 00000000000000
0c 00000000000112 11d001691120c0 0000002c048000 00000000005001
c0 b2000000c8512d 9600d0000f8685 80111b15439873 96009c05cf0f90
c4 21144030988089 9703bf00868502 71069180759700 00111b11104011
c8 804110716664b6 770f9083714190 13947143314033 7668114130111b
cc 00bc00850e2369 10400591807596 80920077111b11 64b50011930093
d0 15427190804166 6892717740111b 7495714b717675 1b159471420d83
d4 95714b71687111 0006ba000c8374 e00006be0008e0 00139471947075
d8 518383109701b8 00bb0011121551 71e0000c2330aa 10421606957177
dc 15b60005970114 00151b16421a17 51744040ac00b5 93727542749270
e0 12937477769470 71121594717142 68838383124194 403033a8000b21
e4 724071111b1343 75542240761295 1a134368114571 0a216898731114
e8 41161b1c154031 19416e11124211 9202111a12421a 09a81d22236841
ec 40409600b70085 76757168928077 7142837495714b 716971111b1594
f0 ce807643689272 111b1542760842 80759200777669 43681193007192
f4 68111b1545b800 42837495714b71 b3008507111b15 06918077409600
f8 0005111b111040 928092007740b6 4066b500119300 111b1110419080
fc 4b767174746840 42710483749571 7168111b159471 1542837495714b
100 0006b10003111b e00006b90005e0 00711213194371 832330779701b5
104 03121319515183 4110711442e000 51427112419471 40303375121319
108 2240111b134314 43681145717554 83839873141a13 1c154031012168
10c 6e14421141141b 111a1017421541 9bf31540124332 10436812421540
110 a91d9c00194011 c000f30050498a 00000000000000 00000000000000
A: c000f30050498a B: 0000002c0480fd C: 0000002c0480fd
S: 00100100000000
M: 00011cd5ff73cb N: 00000000000000 G: 00
There are only 10 kinds of people in the world: those who understand binary and those who do not.
Re: [DM41L] memory/register usage does not match HP41C (?)
Doh! Wish I had thought of suggesting that, and this is not even the first thread with a program so tight that it could not fit with the extra END. Thanks for entering it to find out the cause.
--bob p
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
Re: [DM41L] memory/register usage does not match HP41C (?)
OMG!!!!! You nailed it!
Thanks for the info...
(I really thought that "Packing" the program would save space, instead it was adding the extra END and then using one more register)
@grsbanks, how did you enter the program? Is it using the raw file provided on Thomas Okken's website? The dump you provide couldn't be decoded on on DM41 decoder page?
@grsbanks, what is your thoughts on my DM15L M1B memory size finding viewtopic.php?f=11&t=1801 ?
Sincèrement, Sincerely, 73,
Boubker
DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Boubker
DM15L, DM41L, DM42 #00855 (domes upgraded), DM41X #00707
HP48SX (with dark screen), HP42s, HP32SII (1990 with fraction bug), HP41C/CV
TI-89 titanium, CASIO fx-cg50 and Numworks (to play with micropython)
Re: [DM41L] memory/register usage does not match HP41C (?)
There has been some work put into the DM41 encoder/decoder page and I used the pre-release version of that to generate the dump.
I've confirmed it and put it on the developer's radar. Right now he's working on a different problem with the DM15_M80 but I'm confident this will be looked at soon.Boub65 wrote: ↑Sat Mar 17, 2018 11:09 am@grsbanks, what is your thoughts on my DM15L M1B memory size finding viewtopic.php?f=11&t=1801 ?
There are only 10 kinds of people in the world: those who understand binary and those who do not.