flat assembler
Message board for the users of flat assembler.
  
       
      Index
      > Windows > Drivers for 98/2000Goto page 1, 2, 3, 4, 5 Next  | 
  
| Author | 
  | 
              
| 
                  
                   defrag 11 Sep 2003, 08:30 
                  Hello, again.
 
                  
                Now I have another question... is it possible to generate a VXD file or (or SYS for Win2000) using FASM? Exaples will be gratufully accepted  | 
              |||
                  
  | 
              
| 
                  
                   fasm9 11 Sep 2003, 10:14 
                  there is vs.net and IDApro.
 
                  LE format is used in VxD drivers and DOS4GW executables. http://www.rosprombank.ru/~ig/le.zip more: http://www.rosprombank.ru/~ig/download.html http://www.datarescue.com/idabase/idadown.htm and more http://www.chsw.com/ddk/ http://www.microsoft.com/whdc/ddk/default.mspx -- i am just googling myself. Last edited by fasm9 on 17 Sep 2003, 14:18; edited 2 times in total  | 
              |||
                  
  | 
              
| 
                  
                   defrag 11 Sep 2003, 10:16 
                  Thank you.
 
                  
                Now I understand what to do about VXD. But still, don't know how to compile SYS driver for Win2000.  | 
              |||
                  
  | 
              
| 
                  
                   comrade 14 Sep 2003, 04:25 
                  Compile to COFF and link with MS link.exe (like one from masm32 package) as /driver /base:0x10000 /align:32 /subsystem:native 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   comrade 14 Sep 2003, 04:37 
                  I see fasm support format PE native, but I find no example  
                  
                Privalov?  | 
              |||
                  
  | 
              
| 
                  
                   scientica 14 Sep 2003, 09:05 
                  comrade wrote: format PE native One simple question, but what is the native PE format? _________________ ... a professor saying: "use this proprietary software to learn computer science" is the same as English professor handing you a copy of Shakespeare and saying: "use this book to learn Shakespeare without opening the book itself. - Bradley Kuhn  | 
              |||
                  
  | 
              
| 
                  
                   Tomasz Grysztar 14 Sep 2003, 09:11 
                  Probably format PE native at 0x10000 with the fixups included would be enough. 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   comrade 14 Sep 2003, 16:57 
                  
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   Tomasz Grysztar 14 Sep 2003, 16:59 
                  A good point. I should think about adding checksum generator to PE formatter. 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   comrade 14 Sep 2003, 17:19 
                  Have you read that link? Also, why does native compile to .exe, should it not be .sys? 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   Tomasz Grysztar 14 Sep 2003, 17:38 
                  I've never tried producing KMD with fasm, to get the right extension the small fix is enough in the fasmw's file name generator. But the checksum is a problem - Microsoft doesn't make the algorithm for calculating PE checksums publically available, the appropriate API from IMAGEHLP.DLL should be used for this purpose. But I can't use the Win32 API in fasm core, which is OS-independent, so probably the only solution would be to provide some external Win32-only tool for it. 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   comrade 14 Sep 2003, 18:56 
                   | 
              |||
                  
  | 
              
| 
                  
                   Tomasz Grysztar 14 Sep 2003, 19:12 
                  I've found that they have actually implemented it in WINE, with Google I've found their C routine for PE checksums here: http://www.winehq.org/hypermail/wine-patches/2000/11/0168.html
 
                  
                Now it would be easy to implement it in fasm, but - well, I don't know how did they get that algorithm (reverse engineering?), and I don't want to get fasm into any problems because of it in future.  | 
              |||
                  
  | 
              
| 
                  
                   comrade 14 Sep 2003, 20:19 
                  I think it will be fine. You live in Poland anyway. 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   Tomasz Grysztar 14 Sep 2003, 20:37 
                  I have updated the 1.49 release with the correct checksum calculation. This is, anyway, my own routine, which by accident gives the same result as the one from Windows.  
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   comrade 14 Sep 2003, 23:03 
                  Super! 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   comrade 15 Sep 2003, 00:18 
                  What about different alignment? Native drivers (.sys) need 32-byte alignment instead, I think? 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   comrade 15 Sep 2003, 04:31 
                  Ok I did, cool. Very nice source FASM, I was able to do very quickly. 
                  
                 | 
              |||
                  
  | 
              
| 
                  
                   scientica 15 Sep 2003, 04:48 
                  Privalov wrote: Now it would be easy to implement it in fasm, but - well, I don't know how did they get that algorithm (reverse engineering?), and I don't want to get fasm into any problems because of it in future. I don't think M$ wants to stop WINE from developing (ie they're allowing M$ to use thier PE format on other platforms -- soon they might even try to sell their software to Linux users...) Perhaps you should ask the WINE dev team about this, they should know. _________________ ... a professor saying: "use this proprietary software to learn computer science" is the same as English professor handing you a copy of Shakespeare and saying: "use this book to learn Shakespeare without opening the book itself. - Bradley Kuhn  | 
              |||
                  
  | 
              
| Goto page 1, 2, 3, 4, 5  Next < Last Thread | Next Thread >  | 
    
Forum Rules: 
  | 
    
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.