Цитата(Deka @ Jul 5 2010, 18:41)

Число параметров для одного макроса фиксированное и не может меняться динамически. Параметров всего 10, насколько я помню (от @0 до @9).
Насколько я понимаю уже нет:
Цитата
The number of parameters to an assembler macro is unlimited in AVRASM2 (max 10 in AVRASM)
Что нового в AVRASM2Цитата(Deka @ Jul 5 2010, 18:41)

Макросы с одинаковым названием не допускаются.
Я вроде бы про это не спрашивал, или это связано с моими вопросами в первом посте?
Цитата(Deka @ Jul 5 2010, 18:41)

P.S. Давайте конкретные вопросы. Что не получается сделать?
Конкретные вопросы я вроде бы и задал, интересует макрос push_list позволяющий "отпушить" перечисленные далее регистры, сколько бы их ни было.
Пока я решил вопрос весьма не рационально

push_list4, push_list5, push_list6 и так далее, кол-во параметров фиксировано и указывается в названии макроса.
Я бы сказал это довольно примитивное и посредственное решение. Если есть способ push_list с любым перечисленным количеством параметров было бы великолепно. Попытался двигаться к цели так - передаем максимум парметров, т.е. все 32 регистра, затем условными макросредствами или препроцессорингом пытаемся отбросить не переданные. На мой взгляд здесь есть только одна возможность проверить передан или не передан макро-параметр. Но любая попытка извлечь фактически не переданный параметр на рассмотрение в условное макросредство (.if) приводит к ошибке.
Сообщение отредактировал SAAl - Jul 6 2010, 02:19