flat assembler
Message board for the users of flat assembler.
Index
> Windows > FASM Driver: "Hello World" |
Author |
|
revolution 13 May 2018, 13:39
It depends upon your Windows version. Later versions of Windows don't allow drivers to interact with the user desktop.
If you don't get your driver signed then you will also need to put your PC into driver debug mode to load it. To sign it you have to register and pay MS some money. |
|||
13 May 2018, 13:39 |
|
CFasm 10 Sep 2018, 04:17
yes,fasm can compile sys
|
|||
10 Sep 2018, 04:17 |
|
Ben321 01 Oct 2018, 05:49
revolution wrote: It depends upon your Windows version. Later versions of Windows don't allow drivers to interact with the user desktop. Good point. Older versions of Windows (especially like 98, ME, and 2000) don't force you to sign your driver (which costs money). I think XP and newer do require a signed driver but it can be self signed for testing (and the newest Win versions are even more difficult to even TEST YOUR OWN drivers on, because running the driver with a test certificate requires putting the computer itself into a low-security mode using the PC's firmware settings in either the BIOS or EFI). If you want to experiment with driver programming, your best bet is use Windows 2000 or older, which doesn't enforce any driver signing. In fact, I'd be interested in doing that myself, if somebody could provide a link to a "hello world" driver assembly-language tutorial. |
|||
01 Oct 2018, 05:49 |
|
Tomasz Grysztar 01 Oct 2018, 07:31
There are some old (2006) examples of 64-bit drivers written by Feryno (František Gábriš) on the bottom of the ancient Examples page. For (even older) 32-bit samples you could look on the board.
|
|||
01 Oct 2018, 07:31 |
|
Ben321 01 Oct 2018, 18:31
So if I compile a Windows SYS file for a legacy driver, how does one install the driver? I know with PnP device drivers (not the kind of driver I want to make), it requires the hardware to be plugged in for the driver to be installed and run, as well as an installation procedure which requires the registry to be edited. With legacy (non PnP) device drivers though I think the driver automatically runs at boot up (no registry edits required) and then remains in memory, as long as it's placed in the System32 folder. Is this correct?
But how does one install it, other than putting the SYS file in the System32 folder? Is there, or is there not, any special step(s) to install it? For example do I need to add an entry for the driver it to the registry or win.ini? |
|||
01 Oct 2018, 18:31 |
|
DimonSoft 01 Oct 2018, 19:45
Windows 98 DDK might be a good source: http://old-dos.ru/index.php?page=files&mode=files&do=show&id=3661
|
|||
01 Oct 2018, 19:45 |
|
Ben321 01 Oct 2018, 22:46
DimonSoft wrote: Windows 98 DDK might be a good source: http://old-dos.ru/index.php?page=files&mode=files&do=show&id=3661 Russian website, so I doubt any of the documentation is in English. It's probably the Russian version of the DDK. I also don't know if it tells you how to install the driver you create. Most likely just tells you how to compile the driver. They probably already expect you to know how to install the driver after compiling it. But I downloaded it, and I'll get back to you on whether or not it was useful. |
|||
01 Oct 2018, 22:46 |
|
Ben321 01 Oct 2018, 22:50
Ok, it was in English, but I don't know how to use it for anything in assembly. It looks like it's meant for C++.
|
|||
01 Oct 2018, 22:50 |
|
DimonSoft 02 Oct 2018, 08:36
It’s a bad idea to expect the OS developer to write documentation for your particular language. It is even worse idea to use the Internet instead of the official documentation. It’s not how programming works, especially assembly programming.
|
|||
02 Oct 2018, 08:36 |
|
ACP 17 Oct 2018, 12:42
If you are looking for info about some really ancient interfaces like 16/32 Windows here is a book you should take a look into: https://www.amazon.com/Windows-Assembly-Language-Systems-Programming/dp/087930474X
You will still need DDK/SDK files and it would be probably a lot better if you use MASM for that purpose. Just my 2 cents |
|||
17 Oct 2018, 12:42 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.