Как на масме собрать х64 - ехешник?

Тема в разделе "WASM.BEGINNERS", создана пользователем dyn, 14 дек 2010.

  1. dyn

    dyn New Member

    Публикаций:
    0
    Регистрация:
    30 окт 2009
    Сообщения:
    566
    Скажите пожалуйста, как можно на масме собрать простой х64 ехешный файл?
    В папку с масмом ml64.exe закинул и пытаюсь "канпелировать" им.
    В итоге выдает 4 ошибки

    .686p // Пишет, что ошибка в этой строчке
    .model flat, stdcall // и в этой тоже
    option casemap:none

    .text
    start:
    xor rax, rax
    end start

    // Так же пишет, что нет директивы END

    Как быТЬ?

    Дайте простой шаблон х64 проекта для масм-а
     
  2. dyn

    dyn New Member

    Публикаций:
    0
    Регистрация:
    30 окт 2009
    Сообщения:
    566
    Разобрался. Может кому-то еще пригодится

    Вот шаблон:

    Код (Text):
    1. extrn ExitProcess: PROC
    2.  
    3. .data
    4. SomeArray db 0x90 dup (0)
    5. SomeVar dd 0
    6.  
    7. .code
    8. main proc
    9. xor rcx, rcx
    10. call ExitProcess   ;_fastcall
    11. retn
    12. main endp
    13. End
    Компилировать вот так:
    ml64 XXX.asm /link /subsystem:windows /defaultlib:kernel32.lib /defaultlib:user32.lib /entry:main
    линковать вот так:
    link XXX.obj /subsystem:windows /defaultlib:kernel32.lib /defaultlib:user32.lib /entry:main


    ml64.exe можно взять в паке VisualStudio 2005