flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
pelaillo 20 Aug 2003, 15:59
imports.exe (finally Vortex
![]() What is this: This script will look for all external calls building the import table after searching for the functions in the respective imported executable module (dll, exe...) The source is self-explained. Things to do: 1. Build the import table without need for library and import macros. 2. Speed up the search. 3. Testing. 4. Link COFF files 4. Incorporate to fasm (?) Requirements: This script will work only for fasmw with JohnFound's script directive. How to use: file: test.asm ---------------------------------- format PE GUI 4.0 entry start include '%include%\win32a.inc' macro consider [names] { } consider 'kernel32.dll',consider 'user32.dll' section '.code' code readable executable start: . ; some stuff... section '.idata' import data readable writeable library kernel32,'KERNEL32.DLL',\ user32,'USER32.DLL' script '%include%\imports test.asm' ----------------------------------- Attachment deleted to save space. Please see latest release here http://board.flatassembler.net/topic.php?t=1068 Last edited by pelaillo on 17 May 2004, 13:07; edited 1 time in total |
|||
![]() |
|
pelaillo 02 Sep 2003, 19:25
Say goodbye to the api includes
![]() There are some examples to produce include section directly from DLLs. Import them as script or statically. It saves compile time. Static alternative (to avoid parsing the source each time you compile) Launch from command line: imports minipad.asm>minipad.imp There is also the modified fasmw IDE updated to fasm 1.49 and is script capable. Attachment deleted to save space. Please see my homepage for this project. Last edited by pelaillo on 17 May 2004, 13:09; edited 1 time in total |
|||
![]() |
|
pelaillo 03 Sep 2003, 09:02
Yes, I have avoided to parse and load all included files before parsing the whole, solution that means multiple parsing and a lot of memory.
Also because this is a repetitive task, so the approach I have taken is to proceed after fasm preprocessor avoiding an extra pass (if possible). Also because it permits to collect all api calls and unresolved references. (second step to linker) The workarround I'm doing is: copy src1+src2+src3+src4 allsrc imports allsrc>all.imp |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.