I recently downloaded the MASM32 SDK version 10 package and installed it on my computer.
I was exploring the Q Editor interface, and noticed that it had a "Disassemble EXE" command. And, I couldn't find ANYTHING in the documentation about it. So, I tried it, and, incredibly, it produces a text file that completely describes all the header file information, walks the various section tables, producing a vast collection of useful data,...then listing all the functions and components included in the Import, Export, and Resource Tables,...and, then listing what appears to be a complete disassembly of the selected and loaded executable.
IS THIS A COOL FEATURE. OR WHAT?
That is right, but, SINCERELY, I would rather prefer other ASMIDEs than the Q-Editor.
Hi baltoro,
In the \masm32\bin folder, there is a tool named dumppe.exe The Disassemble EXE command launches this tool to create the listing.
Usage : DumpPE [options] <Win32 PE Portable Executable>
Options : -quiet Suppress copyright string
-disasm Rough disassembly
-reloc Display base relocations
-checksum Calculate Checksum
-resource Display resource section
-nosym Suppress symbolic output
The QEditor is great for quick plays and small apps. For multiple-module, 1000+ line projects, I agree that a full-fledged IDE is helpful here. But QEditor is a great tool, and provides a quick and uncomplicated way to rapidly test and prototype code.
:bg
You can thank Clive Turvey for DumpPE, its an elegant, simple tool that packs a massive amount of useful information in its output.
So what is a good ide then? My projects are getting bigge rand bigger so it would be nice to have a full fledged one :)
Quote from: travism on October 24, 2008, 11:07:09 PM
So what is a good ide then? My projects are getting bigge rand bigger so it would be nice to have a full fledged one :)
RadAsm is a good one.
Quote from: Farabi on October 25, 2008, 12:59:53 AM
Quote from: travism on October 24, 2008, 11:07:09 PM
So what is a good ide then? My projects are getting bigge rand bigger so it would be nice to have a full fledged one :)
RadAsm is a good one.
Too complicated to figure out how to get asm working with that thing, i downloaded the addins too and it still just wants htm/html crap.. unless im just a dumb blonde :)-
travis,
you can try and get an IDE to do it for you OR you can lay out the architecture of your application, I opt for the second, you can then build it with a batch file, NMAKE or call it from a properly set up IDE but better to be in control of your application's architecture than learn nothing by relying on something you do not fully control.
radasm is real nice once you get everything setup, the author does need to simplify it, no reason to make it as annoying as it is. My favorite thing about radasm besides function completion is it shows the procedure names on the side just like a ide for C++ so you can double click to jump to that place in the code.
Hi travism,
If you are looking for an IDE, you can try WinAsm Studio (http://www.winasm.net)
I dont like the fact they force you to signup to get winasm. :\
For many many years I've used the best IDE out there, Notepad! :bg
Well, anyway,...
I'm impressed. And, thanks, Vortex, for the suggestion about command line usage,...I'm embarrassed to admit that I hadn't even noticed DumpPE in the bin folder. and, yes, it produces an enormous amount of useful information.
Weirdly, I was working on a similar type application, and, well, being a novice, I'd made a number of ridiculous errors, which I noticed immediately on comparing my output text with Clive Turvey's DumpPE analysis. But, I hadn't even attempted a disassembly, yet.
How about GVIM?
Notepad is also one of my good friend.
I chuckle at the repetition over the last 10 years or so. Long ago everyone want an IDE like the Borland one down to the key combinations and menu items, the simple answer was use the Borland IDE. Then came early VC IDEs, then syntax colouring then intellisense then code completion and I have no doubt there are another set of gimmicks in the pipeline.
Fortunately QE is NOT an IDE, it is a configurable editor with multiple scripting engines and programable menus that can be extended until you run out of screen space. It comfortable handles 100 meg files even though it is very rare to write something that large. It is a single instance editor with multiple instance support so you are not locked into an MDI or tabbed "can" and you can open and close as many instances as you like while each is independent of the other.
It has 2 published plugin interfaces for more complex tasks than the script engines will perform and it still comes in at under 30k. It is written that way because its a tool, not a technicolor toy. The original question was asked because that type of setup with external tools is possible and it can be extended that way with as many tools as you need to do your work, thats why it was written that way. :bg