After a last small corrections to the latest beta I have finally released the official fasm 1.40:
http://fasm.metro-nt.pl/
http://fasm.sourceforge.net/
The documentation is still not finished, and won't be finished soon, so I have decided to release it in the current state, it has it's own version numbering, so you'll know when it's modified. If someone wants to help finishing the sections about FPU/MMX instructions, he's welcome to. There were some people offering help but I haven't got more response from them.
Posted on 2002-08-20 18:03:11 by Tomasz Grysztar
:grin:
Posted on 2002-08-20 18:05:25 by coder
Privalov
Please, don't spend time describing IA instruction. Intel did this job for you long time ago, and docs are available to everyone on their website.
But they can't describe how to program macros in FASM. :)
Posted on 2002-08-22 16:08:46 by Sergo
The main reason why I describe the IA instruction is that I want to document the syntax of each instruction that should be used in fasm, to let you know of all settings for operands etc that are available in fasm, also some mnemonics are not defined in Intel docs.
As for the macros, I have already documented all of the fasm's directives, if it's still not enough, please let me know.
Posted on 2002-08-22 17:15:22 by Tomasz Grysztar
1.Maybe you can make some table showing which keyword(directive ) is processed at which stage (preproc, assembler, formatter).
if | assembler
IA mnemonice | assembler
equ | preproc
include | preproc


2. Some general diagram showing in the big picture what FASM is doing at each stage and main substeps during each stage.
Posted on 2002-08-22 18:31:11 by Sergo
You should add the "add custom instuction" tutorial to the documentation... It's very interesting! Maybe some more about it too... (the next parts you were talking about)
Posted on 2002-08-23 07:01:54 by NewToAssembly
Privalov,
Could you share with your FASM users
what is the roadmap for FASM so far? At least, for the next release?
Posted on 2002-08-23 16:18:27 by Sergo
The roadmap? :confused: Well, I don't have any. And I have much of other work more important than open source freewares... :(
Maybe adding ELF output in future. Maybe LE (for VxD and OS/2 programming), too. Altough I think I could make an external converter for those formats from COFF, to not overbloat the assembler too much. And bugfixes, of course, all the time. Altough everytime I fix some, I hope it was last. The serious bugs seems to be vanished, but still may be many of some smaller and harder to spot...
And I also want to finish the documentation. It'd be great if I finished the 1.40 docs before fasm 1.41 gets released... This is important to let the people know, what they can actually do with my program. But I don't have much time for it right now. :(
Posted on 2002-08-24 13:15:11 by Tomasz Grysztar
A humble idea about fasm:
since fasm was open source freeware,I think maybe it can develop as NASM do....
It's really hard for one person to support so many formats....
Posted on 2002-08-28 09:28:26 by Hume

Maybe adding ELF output in future.


Back in your coding cellar! *push,push*
Posted on 2002-08-28 09:40:48 by bazik
Originally posted by Privalov
The roadmap? :confused: Well, I don't have any. And I have much of other work more important than open source freewares... :(
I suppose that some programmers wants the roadmap (explanation about how fasm works) because they want to modify the source code to optimize fasm.
I have read the source code and didn't understand how it works, but it can be optimized: using hash algorithm instead of linear search of keywords, or using logarithms to calculate powers of 10 instead of a loop whith multiplications.I haven't do this because i don't know well how your program works and i have a different style of programing.
Posted on 2002-09-01 03:57:02 by octavio

I suppose that some programmers wants the roadmap (explanation about how fasm works) because they want to modify the source code to optimize fasm.

The fasmGuide project was providing such info, but I have lost what I have already written (altough I sent it to the meiling list, maybe some still have a copy) and have no time to write it again.

I have read the source code and didn't understand how it works, but it can be optimized: using hash algorithm instead of linear search of keywords, or using logarithms to calculate powers of 10 instead of a loop whith multiplications.I haven't do this because i don't know well how your program works and i have a different style of programing.

Hashes would be quite good idea, altough it should be a really good implementation to become noticably better than current (there are also other time-critical routines in the parsing process). But using logarithms is impossible - fasm should run on 386 processor without an FPU (I'm still running it on such machines and there are more people who need it), this is not the first time I'm getting suggestions of FP optimizations.
I was doing the optimizations (if I was doing some) for the 386, not Pentium, just because 386s are slower, and so it's more important to have it optimized there than on the fast Pentium.
Posted on 2002-09-01 04:13:50 by Tomasz Grysztar
Originally posted by Privalov
[ But using logarithms is impossible - fasm should run on 386 processor without an FPU

there are another faster algorithm that uses multiplies no far away:
http://www.asmcommunity.net/board/index.php?topic=7301

The attached file is my suggestion for the hash algorithm.
Posted on 2002-09-01 10:51:41 by octavio