Prev: E2E0 Up: Map Next: E33E
E30E: perform ATN()
E30E A5 66 LDA $66 get FAC1 sign (b7)
E310 48 PHA save sign
E311 10 03 BPL $E316 branch if +ve
E313 20 B4 BF JSR $BFB4 else do - FAC1
E316 A5 61 LDA $61 get FAC1 exponent
E318 48 PHA push exponent
E319 C9 81 CMP #$81 compare with 1
E31B 90 07 BCC $E324 branch if FAC1 < 1
E31D A9 BC LDA #$BC pointer to 1 low byte
E31F A0 B9 LDY #$B9 pointer to 1 high byte
E321 20 0F BB JSR $BB0F convert AY and do (AY)/FAC1
E324 A9 3E LDA #$3E pointer to series low byte
E326 A0 E3 LDY #$E3 pointer to series high byte
E328 20 43 E0 JSR $E043 ^2 then series evaluation
E32B 68 PLA restore old FAC1 exponent
E32C C9 81 CMP #$81 compare with 1
E32E 90 07 BCC $E337 branch if FAC1 < 1
E330 A9 E0 LDA #$E0 pointer to (pi/2) low byte
E332 A0 E2 LDY #$E2 pointer to (pi/2) low byte
E334 20 50 B8 JSR $B850 perform subtraction, FAC1 from (AY)
E337 68 PLA restore FAC1 sign
E338 10 03 BPL $E33D exit if was +ve
E33A 4C B4 BF JMP $BFB4 else do - FAC1 and return
E33D 60 RTS
Prev: E2E0 Up: Map Next: E33E