Я компилирую свои asm файлы используя bat файл вида : ml /c /coff "%1.asm" link /ALING:1024 /SUBSYSTEM:WINDOWS /section:.text,ERW "%1.obj" del "%1.obj" Компилирую из командной строки. Примно так: compil.bat myproc.asm Но постоянно нужно приводить к виду: compil.bat myproc Т.е. забивать .asm Как переписать батник что бы можно было компилировать в виде: compil.bat myproc.asm
asmlamo Код (Text): @echo off setlocal if "%~1" == "" goto done set TARGET=%~dpn1 if exist "%TARGET%.exe" del "%TARGET%.exe" ml.exe /c /coff %1 if not exist "%TARGET%.obj" goto done link /ALING:1024 /SUBSYSTEM:WINDOWS /section:.text,ERW "%TARGET%.obj" :done if exist "%TARGET%.obj" del "%TARGET%.obj"
мой вариант, почти тоже самое: Код (Text): echo off if exist %1.obj del %1.obj if exist %1.exe del %1.exe ml.exe /coff /nologo /c /ID:\ASM\masm32\include\ %1.asm if not exist %1.obj goto over1 link /subsystem:windows /align:16 /release /libpath:D:\ASM\masm32\lib\ /ignore:4078 /ignore:4108 /stub:dos.stub /merge:.rdata=.data /merge:.data=.text /section:.text,ERW %1.obj :over1
А Makefile че не рулит??? ------------------- configure.ac--------------- Код (Text): AC_PREREQ(2.59) AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS) AC_CONFIG_SRCDIR([myprog.asm]) #AC_IN_LOCAL (ASSEMBLER) $asmprog="myprog.asm"; echo "creating Makefile..." echo "all:\n\tml /c /coff \"$asmprog.asm\"\nlink /ALING:1024 /SUBSYSTEM:WINDOWS /section:.text,ERW \"$myprog.obj\"\nrm *.obj">Makefile; AC_OUTPUT ------------ Далее - Открываем консоль--- Код (Text): autoconf ./configure make
Рулит но в моем случае из пушки по воробьям ... А мы так мелочевкой балуемся ... В перспективе перейду на Makefile.
Еще вопросик в догонку ... Во времена ДОС я прописывал ассоциации для *.asm файла. Навел на ASM файл нажал ввод и автоматом исполнилось compil.bat myproc.asm Возможно ли это в Win XP или средствами FAR ?
asmlamo угу, возможно создавай раздел HKEY_CLASSES_ROOT\.asm . в параметр - "По умолчанию" вписывай любое имя, например asmfile. Потом создай раздел HKEY_CLASSES_ROOT\asmfile\shell\open\command. в параметр - "По умолчанию" вписывай что-то типа "c:\compil.bat %1"
asmlamo в XP Мой компьютер->Сервис->Свойства папки->Типы файлов->Создать Связываем файлы с расширением .asm с bat-файлом в котором "%~n1.asm" в FAR->F9->Commands->File associations->bat-файл в котором "%1.asm"
+ к этому на вкладке "дополнительно" задаем неск-ко комманд. У меня open->открыть файл в редакторе, masm->компилировать и линковать через masm.bat, fasm-> собрать с помощью fasm.bat. Данные пункты появляются в контекстном меню при щелчке по файлу asm правой кнопкой мыши. Удобно. ИМХО, конечно.