C64 ROM | Routines |
Prev: E2E0 | Up: Map | Next: E33E |
|
||||
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 |