Prev: E043 Up: Map Next: E08D
E059: do series evaluation
Used by the routine at E000.
E059 85 71 STA $71 save count pointer low byte
E05B 84 72 STY $72 save count pointer high byte
This entry point is used by the routine at E043.
E05D 20 C7 BB JSR $BBC7 pack FAC1 into $5C
E060 B1 71 LDA ($71),Y get constants count
E062 85 67 STA $67 save constants count
E064 A4 71 LDY $71 get count pointer low byte
E066 C8 INY increment it (now constants pointer)
E067 98 TYA copy it
E068 D0 02 BNE $E06C skip next if no overflow
E06A E6 72 INC $72 else increment high byte
E06C 85 71 STA $71 save low byte
E06E A4 72 LDY $72 get high byte
E070 20 28 BA JSR $BA28 do convert AY, FCA1*(AY)
E073 A5 71 LDA $71 get constants pointer low byte
E075 A4 72 LDY $72 get constants pointer high byte
E077 18 CLC clear carry for add
E078 69 05 ADC #$05 +5 to low pointer (5 bytes per constant)
E07A 90 01 BCC $E07D skip next if no overflow
E07C C8 INY increment high byte
E07D 85 71 STA $71 save pointer low byte
E07F 84 72 STY $72 save pointer high byte
E081 20 67 B8 JSR $B867 add (AY) to FAC1
E084 A9 5C LDA #$5C set pointer low byte to partial
E086 A0 00 LDY #$00 set pointer high byte to partial
E088 C6 67 DEC $67 decrement constants count
E08A D0 E4 BNE $E070 loop until all done
E08C 60 RTS
Prev: E043 Up: Map Next: E08D