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