Цитата(Alt.F4 @ Aug 28 2011, 17:40)

Что имел ввиду товарищ GP1 во втором посте?
Дык именно это. Приличный ассемблер при неоднократном использовании такого макроса (с абсолютной меткой внутри себя) должен выругаться на переопределение метки.
Ниже
ARV показал, как метки посредством $ превращаются в локальные, и дальше уж ассемблер сообразит.
(могу предположить, что директивы local/global avrasm'ом тоже поддерживаются)
Цитата(MiklPolikov @ Aug 28 2011, 13:49)

Например в MPLAB . Или я просто не знаю как там делать локальные метки в макросе. Поэтому вместо макроса с метками использую функцию, к которой перехожу командой CALL а возвращаюсь на место RETLW
Лет сто не пользовался mpasm'ом, удивился, посмотрел - ничего не изменилось:
hlpMPASMAsm.chm -> Directives -> local
Код
local_label MACRO
local L1, L2
goto L1
L1
goto L2
L2
endm
ORG 0x0000
local_label ; метки будут развёрнуты в _1L1, _1L2
local_label ; метки будут развёрнуты в _2L1, _2L2
local_label ; метки будут развёрнуты в _3L1, _3L2
end