$BCF3/48371:   Convert ASCII String to a Number in FAC

Jump from $AC89, $AE8F, $B7DA:

BCF3: A0 00     LDY #$00
BCF5: A2 0A     LDX #$0A

Jump from $BCFA:

BCF7: 94 5D     STY $5D,X     ; Temporary storage for FLPT value
BCF9: CA        DEX
BCFA: 10 FB     BPL $BCF7
BCFC: 90 0F     BCC $BD0D
BCFE: C9 2D     CMP #$2D
BD00: D0 04     BNE $BD06
BD02: 86 67     STX $67       ; Pointer: Series Evaluation Constant
BD04: F0 04     BEQ $BD0A

Jump from $BD00:

BD06: C9 2B     CMP #$2B
BD08: D0 05     BNE $BD0F

Jump from $BD04, $BD45, $BD7B:

BD0A: 20 73 00  JSR $0073     ; CHRGET: Get next Byte of BASIC Text

Jump from $BCFC:

BD0D: 90 5B     BCC $BD6A

Jump from $BD08:

BD0F: C9 2E     CMP #$2E
BD11: F0 2E     BEQ $BD41
BD13: C9 45     CMP #$45
BD15: D0 30     BNE $BD47
BD17: 20 73 00  JSR $0073     ; CHRGET: Get next Byte of BASIC Text
BD1A: 90 17     BCC $BD33
BD1C: C9 AB     CMP #$AB
BD1E: F0 0E     BEQ $BD2E
BD20: C9 2D     CMP #$2D
BD22: F0 0A     BEQ $BD2E
BD24: C9 AA     CMP #$AA
BD26: F0 08     BEQ $BD30
BD28: C9 2B     CMP #$2B
BD2A: F0 04     BEQ $BD30
BD2C: D0 07     BNE $BD35

Jump from $BD1E, $BD22:

BD2E: 66 60     ROR $60       ; Temporary storage for FLPT value

Jump from $BD26, $BD2A, $BDB0:

BD30: 20 73 00  JSR $0073     ; CHRGET: Get next Byte of BASIC Text

Jump from $BD1A:

BD33: 90 5C     BCC $BD91

Jump from $BD2C:

BD35: 24 60     BIT $60       ; Temporary storage for FLPT value
BD37: 10 0E     BPL $BD47
BD39: A9 00     LDA #$00
BD3B: 38        SEC
BD3C: E5 5E     SBC $5E       ; Temporary storage for FLPT value
BD3E: 4C 49 BD  JMP $BD49

Jump from $BD11:

BD41: 66 5F     ROR $5F       ; Temporary storage for FLPT value
BD43: 24 5F     BIT $5F       ; Temporary storage for FLPT value
BD45: 50 C3     BVC $BD0A

Jump from $BD15, $BD37:

BD47: A5 5E     LDA $5E       ; Temporary storage for FLPT value

Jump from $BD3E:

BD49: 38        SEC
BD4A: E5 5D     SBC $5D       ; Temporary storage for FLPT value
BD4C: 85 5E     STA $5E       ; Temporary storage for FLPT value
BD4E: F0 12     BEQ $BD62
BD50: 10 09     BPL $BD5B

Jump from $BD57:

BD52: 20 FE BA  JSR $BAFE     ; Divide FAC#1 by 10
BD55: E6 5E     INC $5E       ; Temporary storage for FLPT value
BD57: D0 F9     BNE $BD52
BD59: F0 07     BEQ $BD62

Jump from $BD50, $BD60:

BD5B: 20 E2 BA  JSR $BAE2     ; Multiply FAC#1 by 10
BD5E: C6 5E     DEC $5E       ; Temporary storage for FLPT value
BD60: D0 F9     BNE $BD5B

Jump from $BD4E, $BD59:

BD62: A5 67     LDA $67       ; Pointer: Series Evaluation Constant
BD64: 30 01     BMI $BD67
BD66: 60        RTS

Jump from $BD64:

BD67: 4C B4 BF  JMP $BFB4     ; Negate FAC#1

Jump from $BD0D:

BD6A: 48        PHA
BD6B: 24 5F     BIT $5F       ; Temporary storage for FLPT value
BD6D: 10 02     BPL $BD71
BD6F: E6 5D     INC $5D       ; Temporary storage for FLPT value

Jump from $BD6D:

BD71: 20 E2 BA  JSR $BAE2     ; Multiply FAC#1 by 10
BD74: 68        PLA
BD75: 38        SEC
BD76: E9 30     SBC #$30
BD78: 20 7E BD  JSR $BD7E
BD7B: 4C 0A BD  JMP $BD0A

Jump from $BD78, $AA29, $BA21:

BD7E: 48        PHA
BD7F: 20 0C BC  JSR $BC0C     ; Copy FAC#1 into FAC#2
BD82: 68        PLA
BD83: 20 3C BC  JSR $BC3C     ; Evaluate <sgn>
BD86: A5 6E     LDA $6E       ; AFAC Sign
BD88: 45 66     EOR $66       ; FAC Sign
BD8A: 85 6F     STA $6F       ; Sign of result of Arithmetic Evaluation
BD8C: A6 61     LDX $61       ; FAC Exponent
BD8E: 4C 6A B8  JMP $B86A     ; Perform Addition

Jump from $BD33:

BD91: A5 5E     LDA $5E       ; Temporary storage for FLPT value
BD93: C9 0A     CMP #$0A
BD95: 90 09     BCC $BDA0
BD97: A9 64     LDA #$64
BD99: 24 60     BIT $60       ; Temporary storage for FLPT value
BD9B: 30 11     BMI $BDAE
BD9D: 4C 7E B9  JMP $B97E     ; Output ?OVERFLOW Error

Jump from $BD95:

BDA0: 0A        ASL
BDA1: 0A        ASL
BDA2: 18        CLC
BDA3: 65 5E     ADC $5E       ; Temporary storage for FLPT value
BDA5: 0A        ASL
BDA6: 18        CLC
BDA7: A0 00     LDY #$00
BDA9: 71 7A     ADC ($7A),Y   ; Pointer: Current Byte of BASIC Text
BDAB: 38        SEC
BDAC: E9 30     SBC #$30

Jump from $BD9B:

BDAE: 85 5E     STA $5E       ; Temporary storage for FLPT value
BDB0: 4C 30 BD  JMP $BD30

    Previous Page / Next Page