The MASM Forum Archive 2004 to 2012

General Forums => The Campus => Topic started by: ic2 on December 31, 2007, 12:28:11 PM

Title: fasm tips
Post by: ic2 on December 31, 2007, 12:28:11 PM
Recently a truly great coder and educator suggested I try Go-Asm.  For a long time I thought about Go-Asm NASM and FASM.  I have finally made a decision to start experimenting with FASM because it's open source, very small and those guys seem to have worked very hard to get where FASM is today.  The best thing I like is  code now can be written close to MASM syntax.  I'm not trying to leave MASM so this is right up my alley.  I don't think NASM can do that.

I need to learn fast so I can catch-up.  I know it's not going to be easy because i don't know math very well and I can't read compucated macros.

I also read that super macros support is fasm main draw back.  My question is will it still do the same thing that any other assembler can do provided you do it the long way around.  If this is true I have no problem with that.  I need to go from ground up for my peace of mind and to track every detail of a build wih nothing hidden from view.

Mainly, can it write anything that MASM can write for Windows 9x thru Vista.

And below, what do he mean by the words "reasonably capable, ???? do he mean compatible or capable and what dose this all mean in his words" ... Not only this one but this is one of the statment that has stopped me in the pass for trying other assemblers.  Not knowing what people mean or not reading between the lines.

QuoteFASM is a portable assembler, written in assembly language, created by Tomasz Grysztar (Privalov). FASM v1.64 is very fast and reasonably capable. FASM is available...

http://webster.cs.ucr.edu/AsmTools/FASM/index.html

Thanks in advance for your insight and advice.
I'm one step from exploring something difference.



Title: Re: fasm tips
Post by: hutch-- on December 31, 2007, 12:53:14 PM
ic2,

FASM is a good tool, fast and reliable but it is different to MASM in enough ways to make you work harder to get your results. The most notable differences sem to be the data size specifiers BYTE instead of MASM's BYTE PTR and it enforces square brackets around memory addresses, even if they are named adresses like MASM uses.

If you get the swing of it properly you shold be able to write some good fast code.