⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 idwracmac.inc

📁 空调控制程序,MCU 采用NEC D789189
💻 INC
字号:

;========================================================================
;	MACRO NAME	:TNZDEC
;	FUNCTION	:if COUNT != 0 then COUNT--
;	BREAK		:Z,CY	
;========================================================================
TNZDEC	MACRO	COUNTER
	CMP	COUNTER,#0
	BZ	$$+2+2
	DEC	COUNTER

	ENDM		
;========================================================================
;	MACRO NAME	:BTJT
;	FUNCTION	:if FLAG_R,FLAG == 1 then JUMP TO ADDRESS
;	BREAK		:Z
;========================================================================
BTJT	MACRO	FLAG,ADDRESS
	BT	FLAG,$ADDRESS
	ENDM
;========================================================================
;	MACRO NAME	:BTJF
;	FUNCTION	:if FLAG_R,FLAG == 0 then JUMP TO ADDRESS
;	BREAK		:Z
;========================================================================
	
BTJF	MACRO	FLAG,ADDRESS
	BF	FLAG,$ADDRESS
	ENDM
;========================================================================
;	MACRO NAME	:BSET
;	FUNCTION	:flag 'FLAG_R,FLAG' <- 1
;	BREAK		:Z
;========================================================================
BSET	MACRO	FLAG
	SET1	FLAG
	ENDM
;========================================================================
;	MACRO NAME	:BRES
;	FUNCTION	:flag 'FLAG_R,FLAG' <- 0
;	BREAK		:Z
;========================================================================
BRES	MACRO	FLAG
	CLR1	FLAG
	ENDM
;========================================================================
;	MACRO NAME	:JRNE
;	FUNCTION	:if z == 0 then goto ADDRESS
;	BREAK		:	
;========================================================================
JRNE	MACRO	ADDRESS
	BNZ	$ADDRESS
	ENDM
	
;========================================================================
;	MACRO NAME	:JREQ
;	FUNCTION	:if z == 1 then goto ADDRESS
;	BREAK		:Z,CY	
;========================================================================
JREQ	MACRO	ADDRESS
	BZ	$ADDRESS
	ENDM
	
;========================================================================
;	MACRO NAME	:JRULT
;	FUNCTION	:if < then goto ADDRESS
;	BREAK		:	
;========================================================================
JRULT	MACRO	ADDRESS
	BC	$ADDRESS
	ENDM
;========================================================================
;	MACRO NAME	:JRULE
;	FUNCTION	:if <= then goto ADDRESS
;	BREAK		:	
;========================================================================
;JRULE	MACRO	ADDRESS
;	JR	ULE,ADDRESS
;	ENDM
;========================================================================
;	MACRO NAME	:JRUGT
;	FUNCTION	:if > then goto ADDRESS
;	BREAK		:	
;========================================================================
;JRUGT	MACRO	ADDRESS
;	JR	UGT,ADDRESS
;	ENDM
;========================================================================
;	MACRO NAME	:JRUGE
;	FUNCTION	:if >= then goto ADDRESS
;	BREAK		:	
;========================================================================
JRUGE	MACRO	ADDRESS
	BNC	$ADDRESS
	ENDM
;========================================================================
;	MACRO NAME	:JRC
;	FUNCTION	:if cy==1 then goto ADDRESS
;	BREAK		:	
;========================================================================
JRC	macro	address
	BC	$address
	endm
;========================================================================
;	MACRO NAME	:JRUGT
;	FUNCTION	:if cy==0 then goto ADDRESS
;	BREAK		:	
;========================================================================
JRNC	macro	address
	BNC	$address
	endm

;========================================================================
;	MACRO NAME	:JP
;	FUNCTION	: goto ADDRESS
;	BREAK		:	
;========================================================================
JP	macro	address
	BR	!address
	endm

;========================================================================
;	MACRO NAME	:TNZ
;	FUNCTION	:IF R==0 {Z<-1,CY<-0} ELSE (Z<-0,CY<-0)
;	BREAK		:Z,CY	
;========================================================================
TNZ	MACRO	R
	CMP	R,#0
	ENDM

;========================================================================
;	MACRO NAME	:LD
;	FUNCTION	:SORCE->DEST
;	BREAK		:
;========================================================================
LD	MACRO	DEST,SORCE
	MOV	DEST,SORCE
	ENDM
;========================================================================
;	MACRO NAME	:CP
;	FUNCTION	:COMPARE SORCE,DEST
;	BREAK		:
;========================================================================
CP	MACRO	DEST,SORCE
	CMP	DEST,SORCE
	ENDM
;========================================================================
;	MACRO NAME	:JR
;	FUNCTION	:JUMP ADDRESS
;	BREAK		:
;========================================================================
JRA	MACRO	ADDRESS
	BR	$ADDRESS
	ENDM
	
;========================================================================
;	MACRO NAME	:CLR
;	FUNCTION	:CLEAR DEST
;	BREAK		:
;========================================================================
CLR	MACRO	DEST
	LD	DEST,#0
	ENDM
	
;========================================================================
;	MACRO NAME	:RRC
;	FUNCTION	:RORATE RIGHT WITH c
;	BREAK		:
;========================================================================
RRC	MACRO	R
	RORC	R,1
	ENDM
	
;========================================================================
;	MACRO NAME	:RLC
;	FUNCTION	:RORATE LEFT WITH c
;	BREAK		:
;========================================================================
RLC	MACRO	R
	ROLC	R,1
	ENDM

;========================================================================
;	MACRO NAME	:sbc
;	FUNCTION	:SUB A  WITH c
;	BREAK		:
;========================================================================
SBC	MACRO	R,DAT
	SUBC	R,DAT
	ENDM
;========================================================================
;	MACRO NAME	:ADc
;	FUNCTION	:ADD A AND REG WITH c
;	BREAK		:
;========================================================================
ADC	MACRO	R,DAT
	ADDC	R,DAT
	ENDM
	
;========================================================================
;	MACRO NAME	:RCF
;	FUNCTION	:CLEAR cY
;	BREAK		:
;========================================================================
RCF	MACRO	
	CLR1	CY
	ENDM
;========================================================================
;	MACRO NAME	:RCF
;	FUNCTION	:SET CY
;	BREAK		:
;========================================================================
SCF	MACRO	
	SET1	CY
	ENDM

;========================================================================
;	MACRO NAME	:STA
;	FUNCTION	:MOV A TO RAM
;	BREAK		:
;========================================================================
STA	MACRO	DEST
	MOV	DEST,A
	ENDM

;========================================================================
;	MACRO NAME	:LDA
;	FUNCTION	:MOV A FROM RAM
;	BREAK		:
;========================================================================
LDA	MACRO	DEST
	MOV	A,DEST
	ENDM
	
;========================================================================
;	MACRO NAME	:STA
;	FUNCTION	:MOV A TO RAM
;	BREAK		:
;========================================================================
STX	MACRO	DEST
	MOV	DEST,X
	ENDM

;========================================================================
;	MACRO NAME	:LDX
;	FUNCTION	:MOV A FROM RAM
;	BREAK		:
;========================================================================
LDX	MACRO	DEST
	MOV	X,DEST
	ENDM

;========================================================================
;	MACRO NAME	:LDX
;	FUNCTION	:MOV DEST FROM SORCE
;	BREAK		:
;========================================================================
LDM	MACRO	DEST,SORCE
	MOV	DEST,SORCE
	ENDM



	
;========================================================================
;	MACRO NAME	:BNE
;	FUNCTION	:if z == 0 then goto ADDRESS
;	BREAK		:	
;========================================================================
BNE	MACRO	ADDRESS
	BNZ	$ADDRESS
	ENDM
;========================================================================
;	MACRO NAME	:BEQ
;	FUNCTION	:if z == 1 then goto ADDRESS
;	BREAK		:Z,CY	
;========================================================================
BEQ	MACRO	ADDRESS
	BZ	$ADDRESS
	ENDM
;========================================================================
;	MACRO NAME	:BBS
;	FUNCTION	:if FLAG == 1 then goto ADDRESS
;	BREAK		:
;========================================================================
BBS	MACRO	FLAG,ADDRESS
	BT	FLAG,$ADDRESS
	ENDM	
;========================================================================
;	MACRO NAME	:BBC
;	FUNCTION	:if FLAG == 0 then goto ADDRESS
;	BREAK		:
;========================================================================
BBC	MACRO	FLAG,ADDRESS
	BF	FLAG,$ADDRESS
	ENDM	
;========================================================================
;	MACRO NAME	:CMPX
;	FUNCTION	:COMPARE X,DEST
;	BREAK		:
;========================================================================
CMPX	MACRO	DEST
	CMP	X,DEST
	ENDM

;========================================================================
;	MACRO NAME	:BCC
;	FUNCTION	:if cy==0 then goto ADDRESS
;	BREAK		:	
;========================================================================
BCC	macro	address
	BNC	$address
	endm
;========================================================================
;	MACRO NAME	:BCS
;	FUNCTION	:if cy==1 then goto ADDRESS
;	BREAK		:	
;========================================================================
BCS	macro	address
	BC	$address
	endm
	
;========================================================================
;	MACRO NAME	:JMP
;	FUNCTION	:goto ADDRESS
;	BREAK		:	
;========================================================================
JMP	MACRO	ADDRESS
	BR	!ADDRESS
	ENDM	
;========================================================================
;	MACRO NAME	:BRA
;	FUNCTION	:goto ADDRESS
;	BREAK		:	
;========================================================================
BRA	MACRO	ADDRESS
	BR	$ADDRESS
	ENDM	
	
	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -