Для компиляции программы следует выполнить командный файл assemble.cmd.
Его содержимое:
..\..\bin\ml.exe –coff –Fl –c –Foasmdrv.obj main.asm
В результате мы получим листинг main.lst и объектный модульasmdrv.obj.
Дальше мы должны собрать бинарник драйвера из объектного модуля. Для этой цели существует команда link.cmd:
..\..\bin\link.exe @linkcmd.rsp
в файле linkcmd.rsp размещены настройки линкера. Полный список выглядит так:
-MACHINE:IX86
-STACK:32768,4096
-OPT:REF
-OPT:ICF
-INCREMENTAL:NO
-FORCE:MULTIPLE
-RELEASE
-DEFAULTLIB:wdm.lib
-DRIVER
-ALIGN:0x20
-SUBSYSTEM:NATIVE
-BASE:0x10000
-ENTRY:DriverEntry@8
-OUT:disk1\asmdrv.sys
asmdrv.obj
В результате сборки мы получаем файлAsmDrv.sys в подкаталоге Disk1.