Re: A86: Still can't figure it out. Also, FP stack?
[Prev][Next][Index][Thread]
Re: A86: Still can't figure it out. Also, FP stack?
Well, my program is back to where it was before it started acting REALLY
goofy. There's one thing that I still don't get, though. If you run this
program (be patient, it takes about 5 min to run) you'll notice that the X
values start to repeat at about the 100th column. It really confuses me
because I can tell that Xcounter is not getting reset because it continues
plotting to the right, but it's like the program picks up previous Y values.
Any ideas about why this would happen. Also, on a very different note. How
do you push and pop a value, say in OP2, onto the floating point stack?
Thanks for the help!
---
Hmm.... I guess no one reads my Asm FAQ do they? Well, if someone took the
time to read it :), you will notice I have
these two calls in it:
pushrealo1 equ 4813h - push op1 onto FPS 10 bytes
poprealo1 equ 47B7h - pop FPS into op110 bytes
rst $18 is the faster version of pushrealo1 (see rst list below)
And of course I mentioned all this----
Here are some more OP calls that were only mentioned in the mailing list:
_GEQNAMEA equ $4e71 ; OP1=NAME OF CURRENT EQ
_CPYTO1FPST equ $4897 ; OP1=NAME OF EQ VAR WITH EXP
_CPYO2TOFPST equ $48d7 ; SAVE RESULT IN FPST INSTEAD
_GFUDYDX equ $4b9f ; OP1=dy/dx
_CKOP1REAL equ $41cb ; check if op1 real, sets z flag
_CPYTO2FpS2 equ $48c3 ; OP2=y1
_INVSUB equ $45e3 ; OP1=y1-(dy/dy) x1
_INVOP1s equ $5494
_deallocfps1 equ $47db ; clean fps
_cpyto2fps1 equ $48af ; OP2= x
_cpyto2fps2 equ $48c3 ; op2 = dy/dx
_CPYTO2FPST equ $4893 ; constant
10 byte copy:
$48DB 10b(fps-10)->_OP6
$48DF 10b(fps-10)->_OP1
$48E3 10b(fps-10)->(de)
$48E7 10b(hl-10)->(de) page1
$48EB 10b(hl)->(de) page1
$48EF 10b(fps-20)->_OP5
$48F3 10b(fps-10)->_OP2, 10b(fps-20)->_OP1
$48F7 10b(fps-20)->_OP1
$48FB 10b(fps-20)->(de)
$48FF 10b(hl-20)->(de) page1
$4903 10b(fps-30)->_OP2
$4907 10b(fps-30)->_OP3
$490B 10b(fps-30)->_OP6
$490F 10b(fps-30)->_OP1
$4913 10b(fps-30)->(de)
$4917 10b(hl-30)->(de) page1
$491B 10b(fps-40)->_OP5
$491F 10b(fps-30)->_OP2, 10b(fps-40)->_OP1
$4923 10b(fps-40)->_OP1
$4927 10b(fps-40)->(de)
$492B 10b(hl-40)->(de) page1
$492F 10b(fps-50)->_OP1
$4933 10b(fps-50)->(de)
$4937 10b(hl-50)->(de) page1
$493B 10b(fps-70)->_OP1
$493F 10b(fps-80)->_OP1
$4943 10b(fps-90)->_OP1
Why? Cause my Asm FAQ rules...and I am not even done yet
Later,
Matt