📄 fract.asl
字号:
+ 1 .include "CAL_MACRO.h"
+ 1
0000 1 MACRO OFFSET_TP(%1,%2) ;1009
+ 1 adda #<(%2)
+ 1 sta %1+0
+ 1 lda #@(%2)
+ 1 addc #0
+ 1 sta %1+1
+ 1 ;lda #^(%2)
+ 1 ;addc #0
+ 1 ;sta %1+2
+ 1 lda #0
+ 1 sta TPP
+ 1 lda %1+1
+ 1 sta TPH
+ 1 lda %1+0
+ 1 sta TPL
+ 1 ENDM
+ 1
0000 1 MACRO SET_TP(%1,%2) ;1009
+ 1 lda #<(%2)
+ 1 sta %1+0
+ 1 lda #@(%2)
+ 1 addc #0
+ 1 sta %1+1
+ 1 ;lda #^(%2)
+ 1 ;addc #0
+ 1 ;sta %1+2
+ 1 lda #0
+ 1 sta TPP
+ 1 lda %1+1
+ 1 sta TPH
+ 1 lda %1+0
+ 1 sta TPL
+ 1 ENDM
+ 1
0000 1 MACRO ADD_TP(%1,%2) ;1009
+ 1 lda %1+0
+ 1 adda #%2 ;+1
+ 1 sta %1+0
+ 1 lda #00h
+ 1 addc %1+1
+ 1 sta %1+1
+ 1 ;lda #00h
+ 1 ;addc %1+2
+ 1 ;sta %1+2
+ 1
+ 1 ;lda %1+2 ;for intterrpt
+ 1 lda #0
+ 1 sta TPP
+ 1 lda %1+1
+ 1 sta TPH
+ 1 lda %1+0
+ 1 sta TPL
+ 1 ENDM
+ 1
0000 1 MACRO COPY_BUFDATA(%1,%2)
+ 1
+ 1 lda #%1
+ 1 sta Addr1
+ 1 lda #%2
+ 1 sta Addr2
+ 1
+ 1 call CopyData
+ 1
+ 1 ENDM
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
0000 1 MACRO CHK_FLAG(%1,%2)
+ 1 lda %1 ;High active
+ 1 anda #%2
+ 1 ENDM
+ 1
0000 1 MACRO SET_FLAG(%1,%2)
+ 1 lda %1
+ 1 ora #%2
+ 1 sta %1
+ 1 ENDM
+ 1
0000 1 MACRO CLR_FLAG(%1,%2)
+ 1 lda %1
+ 1 anda #~%2
+ 1 sta %1
+ 1 ENDM
+ 1
+ 1
0000 1 MACRO LOAD_PTR()
+ 1 lda temp_Sphptr+2 ;for intterrpt
+ 1 sta TPP
+ 1 lda temp_Sphptr+1
+ 1 sta TPH
+ 1 lda temp_Sphptr+0
+ 1 sta TPL
+ 1 ENDM
+ 1
0000 1 MACRO UPDATE_PTR()
+ 1 ;for main func
+ 1 lda temp_Sphptr+0
+ 1 inca ;+1
+ 1 sta temp_Sphptr+0
+ 1 lda #00h
+ 1 addc temp_Sphptr+1
+ 1 sta temp_Sphptr+1
+ 1 lda #00h
+ 1 addc temp_Sphptr+2
+ 1 sta temp_Sphptr+2
+ 1 ENDM
+ 1
+ 1
0000 1 MACRO SET_TABLE(%1,%2)
+ 1 ;deca
+ 1 adda #<%1
+ 1 sta %2+0
+ 1 lda #>%1
+ 1 addc #0
+ 1 sta %2+1
+ 1 lda #^%1
+ 1 addc #0
+ 1 sta %2+2
+ 1 sta TPP
+ 1 lda %2+1
+ 1 sta TPH
+ 1 lda %2+0
+ 1 sta TPL
+ 1 ENDM
+ 1 ;;;;;---------------------;;;;
0000 1 MACRO HIGHNIBBLE(%1,%2)
+ 1 lda %1
+ 1 adda #%2
+ 1 sta r_dp
+ 1 lda i
+ 1 rorc
+ 1 rorc
+ 1 rorc
+ 1 rorc
+ 1 anda #0fh
+ 1 sta Addr1
+ 1 ENDM
+ 1 ;;;;----------------------;;;;;
0000 1 MACRO HIGHNIBBLE2(%1,%2)
+ 1 lda %1
+ 1 adda %2
+ 1 sta r_dp
+ 1 lda i
+ 1 rorc
+ 1 rorc
+ 1 rorc
+ 1 rorc
+ 1 anda #0fh
+ 1 sta Addr1
+ 1 ENDM
+ 1 ;;;;---------------------;;;;
+ 1 ;MACRO ADDTP()
+ 1 ; adda Table
+ 1 ; sta Table
+ 1 ; lda Table+1
+ 1 ; addc #0
+ 1 ; sta Table+1
+ 1 ; lda Table+2
+ 1 ; addc #0
+ 1 ; sta Table+2
+ 1 ; ENDM
+ 1 ;;;;;---------------------;;;;
+ 1 ;MACRO SETLCD(%1,%2)
+ 1 ; lda #%1
+ 1 ; sta FontHigh
+ 1 ; lda #%2
+ 1 ; sta FontWidth
+ 1 ; ENDM
+ 1 ;;;;---------------------;;;;
+ 1 ;MACRO PUTCOMSEG(%1,%2)
+ 1 ; lda #%1
+ 1 ; sta LcdCom
+ 1 ; lda #%2
+ 1 ; sta LcdSeg
+ 1 ; ENDM
+ 1 ;;;;---------------------;;;;
+ 1 ;MACRO LOADTPADDR(%1)
+ 1 ; lda #^%1
+ 1 ; sta Table+2
+ 1 ; lda #>%1
+ 1 ; sta Table+1
+ 1 ; lda #<%1
+ 1 ; sta Table
+ 1 ; ENDM
+ 1 ;;;;---------------------;;;;
+ 1 ;MACRO LOADTP()
+ 1 ; lda Table+2
+ 1 ; sta r_tpp
+ 1 ; lda Table+1
+ 1 ; sta r_tph
+ 1 ; lda Table
+ 1 ; sta r_tpl
+ 1 ; ENDM
+ 1
0000 1 MACRO SET_PORT(%1,%2,%3)
+ 1 lda %3
+ 1 ora #%2
+ 1 sta %3
+ 1 sta %1
+ 1 ENDM
+ 1
0000 1 MACRO CLR_PORT(%1,%2,%3)
+ 1 lda %3
+ 1 anda #~%2
+ 1 sta %3
+ 1 sta %1
+ 1 ENDM
+ 1
0000 1 MACRO CHK_PORT(%1,%2)
+ 1 lda %1
+ 1 anda #%2
+ 1 ENDM
+ 1
+ 1 ; MACRO DELAY_US(%1) ;;;Offset 1 Inst
+ 1 ; lda #%1 ;2
+ 1 ; suba #3 ;2
+ 1 ; sta temp ;2
+ 1 ; brnc 126$ ;3
+ 1 ; 127$:
+ 1 ; suba #3 ;2 ;8 insts = 3 us
+ 1 ; sta temp ;2
+ 1 ; nop ;1
+ 1 ; ;brz 126$
+ 1 ; brc 127$ ;3
+ 1 ; 126$:
+ 1 ; ENDM
+ 1
+ 1
+ 1
+ 1 ;[KEY DEFINITION]--------------------------------------------------------
0010 1 Key_0 EQU 16 ;璸衡诀
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -