The MASM Forum

64 bit assembler => 64 bit assembler. Conceptual Issues => Topic started by: markallyn on December 11, 2017, 03:07:05 AM

Title: 64 bit macro glossary
Post by: markallyn on December 11, 2017, 03:07:05 AM
Hello everyone,

In its 32-bit incarnation MASM32 qeditor had a very helpful guide to built-in macros located in the HELP tab.  As far as I can tell, the 64-bit qeditor hasn't got the equivalent functionality.  Has anyone compiled a similar "macro guide" for 64 bits.  I know one can examine the MACROS64/macros64.inc file but this contains no descriptive material or examples. 

Thank you.
Mark Allyn
Title: Re: 64 bit macro glossary
Post by: jj2007 on December 11, 2017, 05:25:13 AM
What about these?
\Masm32\help64\masm64.chm
\Masm32\help64\loopcode.htm
\Masm32\help64\calling.htm
\Masm32\help64\Invoke.htm
\Masm32\help64\prologue.htm
Title: Re: 64 bit macro glossary
Post by: markallyn on December 11, 2017, 05:53:35 AM
JJ-

Thanks.  Hadn't thought to look there!  I was concentrating on QEDITOR 64 bit.

Regards,
Mark
Title: Re: 64 bit macro glossary
Post by: markallyn on December 11, 2017, 06:17:11 AM
JJ-

In my help64 file I find  the masm64 .chm file.  There is also a qeditor help file.  However, the remaining items on your list are not present.  I hunted around on my hard drive but couldn't find them anywhere.

Regards,
Mark
Title: Re: 64 bit macro glossary
Post by: jj2007 on December 11, 2017, 06:59:00 AM
No idea where I got them. Attached is also ms_ABI.asc - open in RichMasm or Wordpad.
Title: Re: 64 bit macro glossary
Post by: markallyn on December 11, 2017, 07:52:26 AM
 Thanks, JJ.  I'll look at  the zip file.

Mark
Title: Re: 64 bit macro glossary
Post by: hutch-- on December 11, 2017, 11:48:57 AM
 :biggrin:

Mark,

Its the expectation that does not fit the situation, I am one person, the pay is lousy ($0.00), the hours are endless and there is no end on the horizon. I produce what I can within the time limits I have and that involves the base architecture that is very reliable, over 100 library modules, a working set of pre-processor macros and a part finished help file. QE does the job, it has template generators to make starter code for projects, a number of tools from the 32 bit version and some more that were tweaked to work with 64 bit code.

I am happy enough to share the stuff I write with our members as I have a use for 64 bit code myself but if you want to do things differently you need to enter the world that I did a bit over a year ago, absolute CHYTE documentation, much of which is wrong, no useful help files whatsoever, no viable example code and a mountain of half baked bullsh*t from an array of illiterates who don't produce viable working code.

What you are stuck with is the need for a disassembler, debugger if you can be bothered and a mountain of test pieces to ensure that anything you get up and running fully complies with the Microsoft ABI and can manage properly aligned data for the > 64 bit data types. Once you have it all up and running you then produce the libraries that you need, all of the pre-processor macros that you want to support and the help files to document all of these things.
Title: Re: 64 bit macro glossary
Post by: aw27 on December 12, 2017, 12:13:01 AM
Quote from: hutch-- on December 11, 2017, 11:48:57 AM
What you are stuck with is the need for a disassembler, debugger
One day they will figure that out by themselves.  :t
Title: Re: 64 bit macro glossary
Post by: jj2007 on December 12, 2017, 01:19:17 AM
Search for arkdasm x64dbg and you are fine.
Title: Re: 64 bit macro glossary
Post by: markallyn on December 12, 2017, 07:07:30 AM
Good afternoon / evening, Hutch,

I do hope you don't interpret my post as critical of the work you have done and are doing.  It was certainly not intended to be negative, merely curious.   I for one have been astounded at the extent of your achievement.  I became aware over a period of a year or so that you were the person behind the magic and that this whole effort was a labor of love.  I have been lucky indeed to be able to use what you have produced and I can only imagine I speak for many others.  I wish only that I could point to an achievement of my own that is equally significant.

There is something else I'd like to say and it goes beyond your technical accomplishment.  You  have managed to create and inspire what is, in my experience, the most cordial, respectful, and generous forum I've ever participated in .  The level of sharing and bonhomie is remarkable and I believe it is because of your care and example.

Very best regards from snowy, cold south eastern pennsylvania, USA.

Mark

Title: Re: 64 bit macro glossary
Post by: markallyn on December 12, 2017, 07:14:00 AM
JJ-

I found a couple of 64 bit debuggers, one of which I've been using a lot.  X64dbg is what I've been using.  I've also played with Windbg but I don't care for the gui.  Plus it is pretty much character oriented and comes with a raft of fairly non-intuitive commands.  Somewhere on the forum I believe I read that x64dbg was somehow a "knockoff" of someone else's work, but I don't know any details or if it's even true at all.

I also got a copy of arkdasm and worked a bit with it, but slowly adopted x64dbg as kind of my unofficial "go-to" program.

Mark
Title: Re: 64 bit macro glossary
Post by: ragdog on December 12, 2017, 08:01:55 AM
x64dbg is bloated and has to many senseless function ::)
Title: Re: 64 bit macro glossary
Post by: jj2007 on December 12, 2017, 08:06:00 AM
Quote from: markallyn on December 12, 2017, 07:14:00 AMx64dbg was somehow a "knockoff" of someone else's work

Somebody else is Oleh Yuschuk, and his baby is called OllyDbg (http://www.ollydbg.de/version2.html).
Both Olly and X64Dbg can be set as just-in-time debuggers, meaning that when a program crashes, Olly (32-bit) or X64Dbg (64-bit) jump in and point you straight at the problem. Extremely handy in case of unknown problems (and yes, X64 is bloated, but it works).

In case of known problems, Integrated debugging (http://masm32.com/board/index.php?topic=5314.msg63302#msg63302) is better.

Quote from: markallyn on December 12, 2017, 07:07:30 AMI believe it is because of your care and example

Yes, Hutch has become old and wise. Nowadays it's almost incorrect to call him a grumpy old bastard ;)
Title: Re: 64 bit macro glossary
Post by: markallyn on December 12, 2017, 08:11:20 AM
JJ-

Thanks for the info.  I guess that explains why the two have a similar look and feel.  I liked OLLY a lot and was disappointed to discover that Oleh Yuschuk had not made it 64 bits. 
x64dbg is definitely bloated but it is quite usable.  I settled in on a few of its many "bloats" and ignore the rest.  As you say, it works.

Mark
Title: Re: 64 bit macro glossary
Post by: aw27 on December 14, 2017, 05:55:29 AM
Quote
I've also played with Windbg but I don't care for the gui.

This is back-fence talk, the gui is fully configurable  (I have not said easily  :biggrin:).

(http://www.atelierweb.com/a/windbg.jpg)

The other debuggers simply hook on the Windbg engine, they don't bring anything new except cosmetics. They lag behind or don't support lots of features. If you don't know which features then you will be all right with them.

Title: Re: 64 bit macro glossary
Post by: felipe on December 14, 2017, 07:39:08 AM
Quote from: aw27 on December 14, 2017, 05:55:29 AM
If you don't know which features then you will be all right with them.

Sounds interesting  8)  Is windbg for free?

Title: Re: 64 bit macro glossary
Post by: markallyn on December 14, 2017, 09:51:11 AM
felipe,

Yes, it is freely available as a downloaded installer from MSFT .  It is part of a "debugging tools" package.  I think it is worth a look.

Regards,
Mark Allyn
Title: Re: 64 bit macro glossary
Post by: hutch-- on December 14, 2017, 10:22:58 AM
 :biggrin:

Mark,

My suggestion for putting a working project together so that others can build it did mean having it buildable. This way another member can routinely build you app to see what it does and possibly help you fix any problems that you may have with it. The zip file you posted had 2 files in it with no info on how you build it. Now for anyone who would be interested in helping, this means they would have to construct a technique to build it to test it, a batch file, makefile or similar. The suggestion was to put together the source files AND how to build it, usually a simple batch file does the job here. I had a good look at the 2 source files and they looked OK but just did not have the time to work out how it was built.
Title: Re: 64 bit macro glossary
Post by: markallyn on December 15, 2017, 02:56:54 AM
Hutch,

A fair point.  I should have included the .bat fiat builds it, but never having done this .zip protocol before I messed up.  I will repost it with the included .bat file later today. 

...Still learning....

Regards,
Mark