Post Reply 
New firmware for the Swissmicros DM15L
10-02-2024, 12:44 PM (This post was last modified: 10-02-2024 12:46 PM by Johnp_g.)
Post: #76
RE: New firmware for the Swissmicros DM15L
(10-02-2024 07:55 AM)jebedeo Wrote:  I created a firmware with the program already loaded so you don't have to type it all, would you take a look at it? I'll keep debugging on my end but since you wrote the code it might be easier for you to spot the problem.


Thanks a lot for this, it makes things much much simpler to debug!

I found the same as you, the program exits early after only calculating one component value, instead of looping around for "n" times, and putting 1 to "n" in R01...R0n

I put some PSE instructions in strategic places to see what's happening and found a bug with the ISG command.

Assuming an order of 3

The first time ISG is used is in LBL1. Reg I is set to 1.003 in subroutine LBL6 (3 being the number of components to calculate/the number of loops to perform).

In LBL1 after the first loop completes, and stores its value in R1 the ISG should increment Reg I to 2.003 and loop again until it's done all 3 and Reg I hits 3.003 and the loop exits (GTO8)

However after the first loop the ISG I command increased Reg I to 101.003 and the loop therefore exits immediately. 101 being significantly greater than 3 ;-)

I made a small test program

Code:

LBL A
RCL I
PSE
ISG I
GTO A
RTN

Initially storing 1.003 in Reg I and running fA the prog returns immediately and checking the I register shows 101.003

Initially storing 1.100 in I and running fA the prog counts:

1.100
2.100
3.100
4.100

and returns. Inspecting Reg I shows : 104.100

Very odd behaviour.

Hopefully this is enough to find the bug in ISG.

It looks like DSE is still working normally.

Cheers and thanks - the DM15/LF15C is now my carry-everywhere calculator!

John
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: New firmware for the Swissmicros DM15L - Johnp_g - 10-02-2024 12:44 PM



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