Есть часть сорцов + дизассемблер конечного продукта, нужно восстановить недостающую часть сорцов. В сорцах были обнаруженны обращения к макросу: BlockTransfer.b Source,Destination,D0 Затем в дизассемблере, в точке вызова макроса, нашли следующий код: movem.l d0/a0-a1,-(sp) movea.l ($A001C).l,a0 movea.l ($A0020).l,a1 move.w d0,d0 subq.w #1,d0 loc_3FA2: ; эту метку явно сгенерил дизассемблер move.b (a0)+,(a1)+ dbf d0,loc_3FA2 ; тут проблемка movem.l (sp)+,d0/a0-a1 Если просто написать аналогичное в MACRO ... ENDM естественно получаем ** ERROR553) Duplicate label (ignored). (Компайлер asm68k Microtec Research Inc.) На сколько я понимаю, переход на метку в: dbf d0,loc_3FA2 нужно заменить на что-то типа dbf d0,текущая позиция минус сколько-то... Как это сделать?