📄 interpolat.asm
字号:
.title "Interpolat.asm"
.include "init_54x.asm"
.def MAIN
IINTER .set 0H
IINTE1 .set 1H
IINTE2 .set 2H
IINTE3 .set 3H
IINTE4 .set 4H
QINTER .set 5H
QINTE1 .set 6H
QINTE2 .set 7H
QINTE3 .set 8H
QINTE4 .set 9H
IBASE .set 0AH
QBASE .set 0BH
IAR2 .set 1CH
QAR2 .set 1DH
INPHASE .set 100H
QUAD .set 180H
K_RATIO .set 5
K_INTLG .set 16
MAIN
IDLE #1
ST #INPHASE,IAR2
ST #QUAD,QAR2
STM #INPHASE,AR2
STM #K_RATIO-1,BRC
STM #K_INTLG,BK
STM #1,AR0
MVDK IAR2,AR2
STM #IINTER+K_AD,AR1
STM #INTFILTTAB,AR3
LD IBASE,A
STL A,*AR2
RPTB I_LOOP-1
RPTZ A,#K_INTLG-1
MAC *AR2+0%,*AR3+,A
LD #7FFFH,15,B
MIN A
STH A,1,*AR1+
I_LOOP
MVKD AR2,IAR2
MVDK QAR2,AR2
STM #K_RATIO-1,BRC
STM #INTFILTTAB,AR3
STM #QINTER+K_AD,AR1
LD QBASE,A
STL A,*AR2
RPTB Q_LOOP-1
RPTZ A,#K_INTLG-1
MAC *AR2+0%,*AR3+,A
LD #7FFFH,15,B
MIN A
LD #-7FFFH,15,B
MAX A
STH A,1,*AR1+
Q_LOOP
MVKD AR2,QAR2
B MAIN
INTFILTTAB
.word -2,16,-70,226,-587,1327,-2866,7570
.word 30259,-4290,1683,-693,256,-78,17,-2
.word -3,26,-116,378,-994,2295,-5179,16221
.word 24326,-5915,2483,-1051,394,-120,27,-3
.word -3,27,-120,394,-1051,2483,-5915,24326
.word 16221,-5179,2295,-994,378,-116,26,-3
.word -2,17,-78,256,-693,1683,-4290,30259
.word 7540,-2866,1327,-587,226,-70,16,-2
.word 0,0,0,0,0,0,0,32767
.word 0,0,0,0,0,0,0,0
.END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -