fasm macro problem

Discussion in 'WASM.BEGINNERS' started by botmen, Sep 27, 2009.

  1. botmen

    botmen Member

    Blog Posts:
    0
    Joined:
    Sep 2, 2007
    Messages:
    43
    Нужно сделать что-то типа (invoke без использования ebp)
    Code (Text):
    1. macro bon proc_name,prc_lvar, [proc_vars]
    2. {
    3. common
    4.     label proc_name
    5.     sub esp, prc_lvar
    6.     parameter_offset equ 4+prc_lvar
    7.     offset equ 0
    8.     stack fix esp+offset
    9. forward
    10.     proc_vars equ [stack+parameter_offset]
    11.     parameter_offset equ parameter_offset+4
    12. }
    в коде
    bon p1, p2, p3 ....
    хотелось бы получить
    Code (Text):
    1. mov eax, [esp+offset] ; p1
    2. mov eax, [esp+4+offset] ; p2
    3. mov eax, [esp+8+offset] ; p3
    не соображу как. поможите
     
  2. max7C4

    max7C4 New Member

    Blog Posts:
    0
    Joined:
    Mar 17, 2008
    Messages:
    1,203
    не проще просто объявить var с 0 по N и использовать опционально?
     
  3. botmen

    botmen Member

    Blog Posts:
    0
    Joined:
    Sep 2, 2007
    Messages:
    43
    проще. хочется же автоматически. конечно, это не то чтобы принципиально
     
  4. ziral2088

    ziral2088 New Member

    Blog Posts:
    0
    Joined:
    Aug 16, 2009
    Messages:
    283
    было такое на форуме фасма, поищи там.
     
  5. botmen

    botmen Member

    Blog Posts:
    0
    Joined:
    Sep 2, 2007
    Messages:
    43