$AD9E/44446: Evaluate Expression in Text
Jump from $A928, $A9B7, $AAB5, $AD8A, $AEF4, $AFB4, $B1B5, $E257:
AD9E: A6 7A LDX $7A ; Pointer: Current Byte of BASIC Text
ADA0: D0 02 BNE $ADA4
ADA2: C6 7B DEC $7B ; Pointer: Current Byte of BASIC Text
Jump from $ADA0:
ADA4: C6 7A DEC $7A ; Pointer: Current Byte of BASIC Text
ADA6: A2 00 LDX #$00
ADA8: 24 .BYTE $24
Jump from $AE2D:
ADA9: 48 PHA
ADAA: 8A TXA
ADAB: 48 PHA
ADAC: A9 01 LDA #$01
ADAE: 20 FB A3 JSR $A3FB ; Check Stack Depth
ADB1: 20 83 AE JSR $AE83 ; Evaluate Single Term
ADB4: A9 00 LDA #$00
ADB6: 85 4D STA $4D ; Mask used during FRMEVL
Jump from $B677:
ADB8: 20 79 00 JSR $0079 ; CHRGOT: Get same Byte again
Jump from $ADD4:
ADBB: 38 SEC
ADBC: E9 B1 SBC #$B1
ADBE: 90 17 BCC $ADD7
ADC0: C9 03 CMP #$03
ADC2: B0 13 BCS $ADD7
ADC4: C9 01 CMP #$01
ADC6: 2A ROL
ADC7: 49 01 EOR #$01
ADC9: 45 4D EOR $4D ; Mask used during FRMEVL
ADCB: C5 4D CMP $4D ; Mask used during FRMEVL
ADCD: 90 61 BCC $AE30
ADCF: 85 4D STA $4D ; Mask used during FRMEVL
ADD1: 20 73 00 JSR $0073 ; CHRGET: Get next Byte of BASIC Text
ADD4: 4C BB AD JMP $ADBB
Jump from $ADBE, $ADC2:
ADD7: A6 4D LDX $4D ; Mask used during FRMEVL
ADD9: D0 2C BNE $AE07
ADDB: B0 7B BCS $AE58
ADDD: 69 07 ADC #$07
ADDF: 90 77 BCC $AE58
ADE1: 65 0D ADC $0D ; Data type Flag
ADE3: D0 03 BNE $ADE8
ADE5: 4C 3D B6 JMP $B63D ; Concatenate Two Strings
Jump from $ADE3:
ADE8: 69 FF ADC #$FF
ADEA: 85 22 STA $22 ; Second Utility Pointer
ADEC: 0A ASL
ADED: 65 22 ADC $22 ; Second Utility Pointer
ADEF: A8 TAY
Jump from $AE17:
ADF0: 68 PLA
ADF1: D9 80 A0 CMP $A080,Y ; BASIC Operator Vectors
ADF4: B0 67 BCS $AE5D
ADF6: 20 8D AD JSR $AD8D ; Confirm Result
Jump from $AE1E:
ADF9: 48 PHA
Jump from $AF11:
ADFA: 20 20 AE JSR $AE20
ADFD: 68 PLA
ADFE: A4 4B LDY $4B ; Temporary storage for TXTPTR
AE00: 10 17 BPL $AE19
AE02: AA TAX
AE03: F0 56 BEQ $AE5B
AE05: D0 5F BNE $AE66
Jump from $ADD9:
AE07: 46 0D LSR $0D ; Data type Flag
AE09: 8A TXA
AE0A: 2A ROL
AE0B: A6 7A LDX $7A ; Pointer: Current Byte of BASIC Text
AE0D: D0 02 BNE $AE11
AE0F: C6 7B DEC $7B ; Pointer: Current Byte of BASIC Text
Jump from $AE0D:
AE11: C6 7A DEC $7A ; Pointer: Current Byte of BASIC Text
AE13: A0 1B LDY #$1B
AE15: 85 4D STA $4D ; Mask used during FRMEVL
AE17: D0 D7 BNE $ADF0
Jump from $AE00:
AE19: D9 80 A0 CMP $A080,Y ; BASIC Operator Vectors
AE1C: B0 48 BCS $AE66
AE1E: 90 D9 BCC $ADF9
Jump from $ADFA:
AE20: B9 82 A0 LDA $A082,Y ; BASIC Operator Vectors
AE23: 48 PHA
AE24: B9 81 A0 LDA $A081,Y ; BASIC Operator Vectors
AE27: 48 PHA
AE28: 20 33 AE JSR $AE33
AE2B: A5 4D LDA $4D ; Mask used during FRMEVL
AE2D: 4C A9 AD JMP $ADA9
Jump from $ADCD:
AE30: 4C 08 AF JMP $AF08 ; Output ?SYNTAX Error
Jump from $AE28:
AE33: A5 66 LDA $66 ; FAC Sign
AE35: BE 80 A0 LDX $A080,Y ; BASIC Operator Vectors
Jump from $A7A2:
AE38: A8 TAY
AE39: 68 PLA
AE3A: 85 22 STA $22 ; Second Utility Pointer
AE3C: E6 22 INC $22 ; Second Utility Pointer
AE3E: 68 PLA
AE3F: 85 23 STA $23 ; Second Utility Pointer
AE41: 98 TYA
AE42: 48 PHA
Jump from $A788:
AE43: 20 1B BC JSR $BC1B ; Round FAC#1
AE46: A5 65 LDA $65 ; FAC Mantissa
AE48: 48 PHA
AE49: A5 64 LDA $64 ; FAC Mantissa
AE4B: 48 PHA
AE4C: A5 63 LDA $63 ; FAC Mantissa
AE4E: 48 PHA
AE4F: A5 62 LDA $62 ; FAC Mantissa
AE51: 48 PHA
AE52: A5 61 LDA $61 ; FAC Exponent
AE54: 48 PHA
AE55: 6C 22 00 JMP ($0022) ; Second Utility Pointer
Jump from $ADDB, $ADDF:
AE58: A0 FF LDY #$FF
AE5A: 68 PLA
Jump from $AE03:
AE5B: F0 23 BEQ $AE80
Jump from $ADF4:
AE5D: C9 64 CMP #$64
AE5F: F0 03 BEQ $AE64
AE61: 20 8D AD JSR $AD8D ; Confirm Result
Jump from $AE5F:
AE64: 84 4B STY $4B ; Temporary storage for TXTPTR
Jump from $AE05, $AE1C:
AE66: 68 PLA
AE67: 4A LSR
AE68: 85 12 STA $12 ; Flag: TAN sign/Comparative result
AE6A: 68 PLA
AE6B: 85 69 STA $69 ; AFAC Exponent
AE6D: 68 PLA
AE6E: 85 6A STA $6A ; AFAC Mantissa
AE70: 68 PLA
AE71: 85 6B STA $6B ; AFAC Mantissa
AE73: 68 PLA
AE74: 85 6C STA $6C ; AFAC Mantissa
AE76: 68 PLA
AE77: 85 6D STA $6D ; AFAC Mantissa
AE79: 68 PLA
AE7A: 85 6E STA $6E ; AFAC Sign
AE7C: 45 66 EOR $66 ; FAC Sign
AE7E: 85 6F STA $6F ; Sign of result of Arithmetic Evaluation
Jump from $AE5B:
AE80: A5 61 LDA $61 ; FAC Exponent
AE82: 60 RTS
Previous Page / Next Page