-[[.:start]]
====== DM41X PPC ROM ======
** Various useful functions from the PPC ROM **
* PPC Manual from here : [[https://literature.hpcalc.org/items/1330]]
===== Solve (SV) =====
Similar to other Solvers (e.g. the Advantage Pac [[dm41x_solve|Solve]]) but with some minor differences to be aware of.
* Put the Global Label (name) of the program (in this example it's ''LBL AA'') containing the expression to be solved in register 6
* ALPHA''AA''ALPHA
* XEQALPHA''ASTO''ALPHA''06''
* The program with the expression to be solved must be written as though unknown ''x'' is on the x-stack only
* other solvers "fill the stack" with ''x''
* here you need to manipulate the stack to get ''x'' as needed. It's easiest is to just ''ENTER'' ''ENTER'' ''ENTER'' and then treat the stack the same as other solvers (i.e. as if it's filled with ''x'' and you use ''x<>y'' to pull a fresh copy of ''x'' as needed in the expression).
* Put a "step size" in y and a "start value" in x (e.g. ''-3'')
* ''0'' ENTER ''-3''
* run ''SV''
==== example ====
'' 2x2 + 3x - 4 = 0 ''
Prog "AA"
LBL AA
ENTER
ENTER
ENTER
x^2
2
*
x<>y
3
*
+
4
-
RTN
=== for the first root ===
* ''0'' ENTER ''1''
* XEQALPHA ''SV'' ALPHA
and the answer comes.....
''0.850781059''
=== for the second root ===
* ''0'' ENTER ''-3''
* XEQALPHA ''SV'' ALPHA
and the answer comes.....
''-2.350781060''
===== Integrate (IG) =====
This is very similar to ''SV'' - the main difference is that the Global Label for the program containing the expression to be integrated is stored with ''ASTO'' in ''Register 10''. I'm using ''AA'' as a general scratchpad Program label for use with Solve and Integrate...
* ALPHA''AA''ALPHA
* XEQALPHA''ASTO''ALPHA''10''
For ''SV'' it's R06.
Otherwise carry out the same procedure for storing the expression.
Time taken for integration, and the accuracy obtained, is set by the display format - the more digits the longer the integration takes.
Set ''SCI 04'' for most cases.
* Set the name of the prog. in ''Reg 10''
* Edit the prog. for the expression to be integrated
* Set the display format/accuracy to ''SCI 04''
* The limits of integration are set
* ''lower''ENTER ''upper''
* Then the ''IG'' routine is executed
* XEQALPHA''IG''ALPHA
--- //John Pumford-Green 24/01/26 10:29 GMT//
===== Further Information =====
{{tag>calculator dm41x}}