в общем суть такая: есть макрос stdcall Код (Text): macro stdcall proc,[arg] ; directly call STDCALL procedure { common if ~ arg eq reverse pushd arg common end if call proc } Он конечно самодостаточен, но нужно его как-то чуть расширить. ТЗ: Есть вызов процедур, в которые передаются не значения, а адреса переменных и приходится извращаться таким образом: lea eax,[var4] push eax lea eax,[var3] push eax lea eax,[var2] push eax lea eax,[var1] push eax lea eax,[var0] push eax stdcall proc_name,[var_stat1],[var_stat2] а хотелось бы, чтобы можно было напрямую отдавать stdcall и значения переменных и адреса переменных. Пусть допустим адреса определяются в фигурных скобках. Пример: Код (Text): stdcall,[var_stat1],[var_stat2],{var0},{var1},{var2},{var3},{var4} не правда ли выглядит симпатичней и компактней, чем первый вариант ? Как раз было бы здорово видеть, что мы передаем. Если фигурные скобки - значит оффсет, если квадратные - значит значение переменной. PS: до макросов еще не добрался и т.д, прошу помощи
common_up win32ax.inc содержит макросы, предоставляющие такую поддержку посредством вспомогательного слова addr. Подробности либо в самих макросах либо в разделе документации Windows Programming -> Extended Headers -> Procedure Parameters.
подключаешь не win32a.inc, а win32ax.inc и тогда можешь писать: Код (Text): stdcall,[var_stat1],[var_stat2],addr var0,addr var1,addr var2,addr var3,addr var4