mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-07 21:30:39 +00:00
bubble: more optimization
This commit is contained in:
parent
1a6d39d63f
commit
7216c531ff
@ -22,7 +22,7 @@
|
||||
; 9F673 = clear screen, only clear X region we use
|
||||
; 9DD73 = clear screen, only clear Y region we use
|
||||
; 906FE = inline/unroll the sines
|
||||
; TODO: inline/unroll sine/cosine calls
|
||||
; 817BE = inline/unroll the cosines
|
||||
|
||||
|
||||
; soft-switches
|
||||
@ -178,7 +178,6 @@ no_rl_carry:
|
||||
|
||||
; U=SIN(I+V)+SIN(RR+X)
|
||||
|
||||
; ldy #0
|
||||
lda IVL ; 3
|
||||
sta STEMP1L ; 3
|
||||
lda IVH ; 3
|
||||
@ -191,26 +190,13 @@ no_rl_carry:
|
||||
lda sin_table_high,X ; 4
|
||||
sta OUT1H ; 3
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
; ldy #2
|
||||
lda RXL ; 3
|
||||
sta STEMP1L ; 3
|
||||
lda RXH ; 3
|
||||
|
||||
; jsr sin
|
||||
|
||||
.include "sin_unrolled.s"
|
||||
|
||||
; lda sin_table_low,X ; 4
|
||||
; sta OUT1L ; 3
|
||||
; lda sin_table_high,X ; 4
|
||||
; sta OUT1H ; 3
|
||||
|
||||
clc
|
||||
lda OUT1L
|
||||
adc sin_table_low,X
|
||||
@ -221,17 +207,39 @@ no_rl_carry:
|
||||
|
||||
; V=COS(I+V)+COS(RR+X)
|
||||
|
||||
ldy #0
|
||||
jsr cos
|
||||
ldy #2
|
||||
jsr cos
|
||||
; 1.57 is roughly 0x0192 in 8.8
|
||||
clc ; 2
|
||||
lda IVL ; 3
|
||||
adc #$92 ; 2
|
||||
sta STEMP1L ; 3
|
||||
|
||||
lda IVH ; 4
|
||||
adc #1 ; 2
|
||||
|
||||
; jsr sin
|
||||
.include "sin_unrolled.s"
|
||||
lda sin_table_low,X ; 4
|
||||
sta OUT1L ; 3
|
||||
lda sin_table_high,X ; 4
|
||||
sta OUT1H ; 3
|
||||
|
||||
|
||||
; 1.57 is roughly 0x0192 in 8.8
|
||||
clc ; 2
|
||||
lda RXL ; 3
|
||||
adc #$92 ; 2
|
||||
sta STEMP1L ; 3
|
||||
lda RXH ; 3
|
||||
adc #1 ; 2
|
||||
; jsr cos
|
||||
.include "sin_unrolled.s"
|
||||
|
||||
clc
|
||||
lda OUT1L
|
||||
adc OUT2L
|
||||
adc sin_table_low,X
|
||||
sta VL
|
||||
lda OUT1H
|
||||
adc OUT2H
|
||||
adc sin_table_high,X
|
||||
sta VH
|
||||
|
||||
|
||||
@ -359,7 +367,7 @@ flip2:
|
||||
|
||||
|
||||
|
||||
|
||||
.if 0
|
||||
;=======================
|
||||
sin:
|
||||
|
||||
@ -421,7 +429,6 @@ already_loaded:
|
||||
;=============================
|
||||
cos:
|
||||
; 1.57 is roughly 0x0192 in 8.8
|
||||
|
||||
clc ; 2
|
||||
lda IVL,Y ; 4
|
||||
adc #$92 ; 2
|
||||
@ -432,7 +439,7 @@ cos:
|
||||
; sta STEMP1H ; 3
|
||||
|
||||
jmp already_loaded ; 3
|
||||
|
||||
.endif
|
||||
|
||||
.include "hgr_clear_part.s"
|
||||
.include "hgr_table.s"
|
||||
|
Loading…
x
Reference in New Issue
Block a user