📄 bpsk.asm
字号:
.mmregs
.def start
K_IF80 .set 2
.bss x,1
.bss y,1
.bss SINSTP,1
.bss SIN25P,1
.data
sinx .usect "sinx",500
cosx .usect "cosx",500
bpsk .usect "bpsk",2000
STACK .usect "STACK",10
start: SSBX FRCT
STM #STACK+10,SP
STM #sinx,AR1
STM #cosx,AR3
STM #bpsk,AR0
ST #0,@SIN25P
CALL SIN25K
STM #x,AR5
STM #y,AR7
ST #0xaaaa,*AR7 ;
LD *AR7,B
STL B,*AR5
ST #0,@SIN25P
STM #15,AR6
BPSKSTART: LD *AR5,B
AND #1,B
SFTL B,5
LD *AR5,A
ROR A
STL A,*AR5
LD SIN25P,A
ADD B,A
ADD #SINTAB,A
STM #128,BRC
RPTB BPSKEND
SUB #SINTAB,A
ADD SINSTP,A
AND #07FH,A
ADD #SINTAB,A
BPSKEND: READA *AR0+
BANZ BPSKSTART,*AR6-
here: B here
SIN25K: STM #500, BRC
RPTB SINRET-1
ST #K_IF80,SINSTP
LD SIN25P,A
ADD SINSTP,A
AND #07FH,A
STL A,SIN25P
ADD #SINTAB,A
READA *AR1+
LD SIN25P,A
ADD #32,A
AND #07FH,A
ADD #SINTAB,A
READA *AR3+
SINRET RET
SINTAB: .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,08277H,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,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
.text
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -