; Тут будут макросы ===========================================================

; Загрузка числа в порт
.MACRO 	OUTI		; Это описание макроса. Везде где outi встретится в
			; коде, то заменяется на этот кусок кода,
	LDI	R17,@1	; причем @0,@1 это параметры, они заменятся введенными
			; параметрами макроса. Данный макрос тупо копирует
	OUT	@0,R17	; введенное число сначала в регистр R17, а из него регистр
.ENDM

; сохраняем в стек SREG и R16
.MACRO PUSHF
	PUSH	R16
	IN	R16,SREG
	PUSH	R16
.ENDM

; восстанавливаем из стека SREG и R16
.MACRO POPF
	POP	R16
	OUT	SREG,R16
	POP	R16
.ENDM

; 16-ти разрядное сравнение регистровой пары R с числом
.macro	CPIW
	ldi	R16,High(@0)
	cpi	RL,Low(@0)
	cpc	RH,R16
.endm
