Remove no longer used mov_FAC1_MEM

This commit is contained in:
Rikard Nordgren authored and FeralChild64 committed 2026-05-09 17:01:44 +02:00
1 parent 1adfa10462
commit 1b1d0c4329
1 file changed
-74
-74
View File
@@ -1,74 +0,0 @@
;; #LAYOUT# STD * #TAKE
;; #LAYOUT# * BASIC_0 #TAKE
;; #LAYOUT# * * #IGNORE
;
; Math package - copy FAC1 to memory location, do not round
;
; Input:
; - .X - address low byte
; - .Y - address high byte
;
; Output:
; - .A - FAC1 exponent
;
; See also:
; - https://www.c64-wiki.com/wiki/Floating_point_arithmetic
; - https://codebase64.org/doku.php?id=base:kernal_floating_point_mathematics
;
mov_FAC1_MEM:
; Original routines use $22/$23 location for a vector too, see here:
; - https://codebase64.org/doku.php?id=base:kernal_floating_point_mathematics
sty INDEX+1
stx INDEX+0
ldy #$00
; Copy exponent
lda FAC1_exponent
sta (INDEX), y
beq mov_FAC1_MEM_end ; for 0 no need to copy anything more
; Copy first byte of mantissa
iny
lda FAC2_mantissa+3
sta (INDEX), y
; Copy the sign XXX try to optimize this part
lda FAC1_sign
bne @1
lda FAC2_mantissa+3
and #$7F
sta (INDEX), y
@1:
; Copy remaining parts of mantissa
iny
lda FAC2_mantissa+2
sta (INDEX), y
iny
lda FAC2_mantissa+1
sta (INDEX), y
iny
lda FAC2_mantissa+0
sta (INDEX), y
; Checked, that mov_FAC1_MEM works on real ROM too (at $BBD7),
; and clears FACOV in a similar way as mov_FAC1_FAC2 does (not surprising)
ldy #$00
sty FACOV
mov_FAC1_MEM_end:
lda FAC1_exponent
rts