$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