I am wonder, because I am guessing that there is no real standard?? I am using MASM and can have debug info. So is it in the obj file or is a seperate file made? Does NASM use obj files? NASM uses alink, so I doubt I could link a MASM with a NASM object file. Where does NASM store it's debug info?
I wondering just how interoperable all the assemblers are(MASM,NASM,FASM,etc.)
Im also using VC7 as my debug IDE, so I am curious if I could debug a NASM built exe with symbols. Or a FASM built exe.
I downloaded the NASM source to look as. I'm just getting curious where these tools come from, and how much work it took to make them.
I wondering just how interoperable all the assemblers are(MASM,NASM,FASM,etc.)
Im also using VC7 as my debug IDE, so I am curious if I could debug a NASM built exe with symbols. Or a FASM built exe.
I downloaded the NASM source to look as. I'm just getting curious where these tools come from, and how much work it took to make them.
debug info... well well :). There's a couple of different formats,
and a couple of different ways they can be stored. The nicest is
pdb format where the debug info is stored external to the exe.
For win32, masm uses COFF object files, nasm can generate these as
well - I don't know how good nasm's debug info is though. Also,
you need a linker that supports debug info (link.exe from microsoft
does, and there's no reason you can't use that with nasm programs).
and a couple of different ways they can be stored. The nicest is
pdb format where the debug info is stored external to the exe.
For win32, masm uses COFF object files, nasm can generate these as
well - I don't know how good nasm's debug info is though. Also,
you need a linker that supports debug info (link.exe from microsoft
does, and there's no reason you can't use that with nasm programs).
Ahhh the pdb file... And NASM can generate these too? I was trying to figure, if someone wanted to make an assembler, but use pre-exitsting work and standard what would the shortest and best path to do it.
Here is the problems I can see:
make a PE stub (done at link time?)
make an OBJ file
link the OBJs into an EXE
create debug info
Now if NASM makes link.exe comaptible OBJ files..... And you were willing to do some NASM code diving....It might just work. The main concern then is making sure NASM could generate a useable OBJ(make sure what you feed the OBJ routine is not junk)
I'm feeling wildly speculative.....
Thanks for the info f0dder.
Here is the problems I can see:
make a PE stub (done at link time?)
make an OBJ file
link the OBJs into an EXE
create debug info
Now if NASM makes link.exe comaptible OBJ files..... And you were willing to do some NASM code diving....It might just work. The main concern then is making sure NASM could generate a useable OBJ(make sure what you feed the OBJ routine is not junk)
I'm feeling wildly speculative.....
Thanks for the info f0dder.