Макро не работает.

Тема в разделе "WASM.ASSEMBLER", создана пользователем Clerk, 14 мар 2009.

  1. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.622
    Адрес:
    Russia
    а так
    jt macro Address:REQ
    Address PROTO NEAR
    Disp = ($ - Offset(Address))
    if Disp gt 127
    .err
    endif
    BYTE Disp + 1
    endm
     
  2. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.622
    Адрес:
    Russia
    у меня была подобная проблема тока для процедур -
    определить её тип можно только после её описания
     
  3. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.622
    Адрес:
    Russia
    добавь еще ifndef/endif вокруг прототипа
     
  4. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Не работает никак:
    [​IMG]
     
  5. litrovith

    litrovith Member

    Публикаций:
    0
    Регистрация:
    20 июн 2007
    Сообщения:
    509
    Clerk, ну кривоватый макроассемблер, кривоватый )
    Код (Text):
    1. jt_ macro Address
    2.     Disp = ($ - Address)
    3.     mov eax, Disp
    4.     .if eax > 127
    5.                int 3
    6.     .endif
    7.     byte Disp + 1
    8.  
    9. endm
     
  6. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    litrovith
    Макрос нужен чтоб инструкцию сделать, зачем мне там в коде проверки.
     
  7. litrovith

    litrovith Member

    Публикаций:
    0
    Регистрация:
    20 июн 2007
    Сообщения:
    509