;*****************************************************************************
; Addition float1 <- float1 + float2
fadd
jsr ieeetotmp
lda exp2
cmp #$80
beq endfadd
fadd1
lda exp1
cmp #$80
beq return2
subexp
sec
lda exp1
sbc exp2
bvs underflow
bpl biggeris1
jsr swap
jmp subexp
underflow
bmi endfadd
jsr swap
jmp endfadd
biggeris1
jsr rormant2
lda sign1
eor sign2
bmi signdiff
jsr addmant
bcc endfadd
ror mant1+2
ror mant1+1
ror mant1
clc
lda exp1
adc #1
sta exp1
bvs faoverflow
endfadd
jmp tmptoieee
signdiff
jsr submant
beq afzero
bcs normalise
jsr negmant
normalise
lda mant1+2
bmi endfadd
asl mant1
rol mant1+1
rol mant1+2
sec
lda exp1
sbc #1
sta exp1
bvs faoverflow
jmp normalise
faoverflow
jmp overflow
afzero
jmp fzero
return2
lda sign2
sta sign1
lda exp2
sta exp1
lda mant2
sta mant1
lda mant2+1
sta mant1+1
lda mant2+2
sta mant1+2
jmp tmptoieee