📄 fm2.asm
字号:
.title "fm.asm"
.mmregs
.def start
.bss sin25p,1
.bss sinstp,1
.bss sin25p1,1
.bss sinstp1,1
.bss sin25p2,1
.bss sinstp2,1
.bss x0,1
.bss x1,1
.bss c0,1
.bss s0,1
.bss c1,1
.bss s1,1
K .word 8*32768/10
y0 .usect "DATA",600
y1 .usect "DATA",600
y .usect "DATA1",600
size .set 100
stack .usect "STK",size
.text
start: SSBX FRCT
LD #sin25p,DP
STM #stack+size,SP
ST #0,sin25p2
ST #1*128/80,sinstp2
STM #y0,AR2
STM #500,AR1
ZOO: LD sin25p2,A ;产生sinx
ADD sinstp2,A
AND #07Fh,A
STL A,sin25p2
ADD #sintab,A
READA *AR2+
BANZ ZOO,*AR1-
STM #y0,AR3
ST #0,x0
STM #x0,AR4
ST #0,sin25p
ST #0,sin25p1
ST #20*128/80,sinstp
STM #y,AR2
STM #y1,AR5
;STM #s1,AR6
STM #y0,AR7
STM #500,AR1
loop: LD sin25p,A ;产生载波
ADD sinstp,A
AND #07Fh,A
STL A,sin25p
ADD #sintab,A
READA s0 ;sinx
LD sin25p,A
ADD #32,A
AND #7FH,A
ADD #sintab,A
READA c0 ;cosx
CALL SIN
LD sin25p1,A ;产生调制信号
ADD sinstp1,A
AND #07Fh,A
STL A,sin25p1
ADD #sintab,A
READA s1 ;sinx
LD sin25p1,A
ADD #32,A
AND #7FH,A
ADD #sintab,A
READA *AR5 ;cosx
LD s0,T
MPY s1,A
STH A,x1
LD c0,T
MPY *AR5+,A
;STH A,*AR4
SUB x1,A
;SUB *AR7+,16,A
STH A,*AR2+
BANZ loop, *AR1-
here: B here
SIN: ADD *AR3,*AR4,A
MVDD *AR3+,*AR4
STH A,T
MPY #K,A
STH A,sinstp1
RET
.data
sintab: .word 00000H,00648H,00C8CH,012C8H,018F9H,01F1AH,02528H,02B1FH
.word 030FBH,036BAH,03C56H,041CEH,0471CH,04C3FH,05133H,055F5H
.word 05A82H,05ED7H,062F1H,066CFH,06A6DH,06DC9H,070E2H,073B5H
.word 07641H,07884H,07A7CH,07C29H,07D89H,07E9CH,07F61H,07FD8H
.word 07FFFH,07FD8H,07F61H,07E9CH,07D89H,07C29H,07A7CH,07884H
.word 07641H,073B5H,070E2H,06DC9H,06A6DH,066CFH,062F1H,05ED7H
.word 05A82h,055F5H,05133H,04C3FH,0471CH,041CEH,03C56H,036BAH
.word 030FBH,02B1FH,02528H,01F1AH,018F9H,012C8H,00C8CH,00648H
.word 00000H,0F9B8H,0F374H,0ED38H,0E707H,0E0E6H,0DAD8H,0D4E1H
.word 0CF05H,0C946H,0C3AAH,0BE32H,0B8E4H,0B3C1H,0AECDH,0AA0BH
.word 0A57EH,0A129H,09D0FH,09931H,09593H,09237H,08F1EH,08C4BH
.word 089bfh,0877ch,08584h,083D7H,08227H,08164H,0809FH,08028H
.word 08001H,08028H,0809FH,08164H,08277H,083D7H,08584H,0877CH
.word 089BFH,08C4BH,08F1EH,09237H,09593H,09931H,09D0FH,0A129H
.word 0A57EH,0AA0BH,0AECDH,0B3C1H,0B8E4H,0BE32H,0C3AAH,0C946H
.word 0CF05H,0D4E1H,0DAD8H,0E0E6H,0E707H,0ED38H,0F374H,0F9B8H
.word 00000H
.END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -