flat assembler
Message board for the users of flat assembler.

Index > Main > NASM and FASM

Goto page Previous  1, 2
Author
Thread Post new topic Reply to topic
crc



Joined: 21 Jun 2003
Posts: 637
Location: Penndel, PA [USA]
crc
Yes, it *is* still alive, but development is very slow right now. That's not suprising given the complexity of the codebase! A lot of work has gone into documenting the internals, so I *hope* it will pick soon. FASM is nice, but I still prefer NASM's macro facilities. (And NASM already runs natively on more OSes than FASM). To get the latest changes, you'd have to use CVS at the moment
Post 31 May 2004, 03:55
View user's profile Send private message Visit poster's website Reply with quote
pelaillo
Missing in inaction


Joined: 19 Jun 2003
Posts: 878
Location: Colombia
pelaillo
crc wrote:
given the complexity of the codebase!


That's IMHO the greatest advantage of Fasm over Nasm: Fasm sources are clear water.
Actually I'm able to write in Fasm every thing I could in Nasm but I use a very simple subset of features. From time to time I get surprised at seeing several Fasm capabilities that I was not aware of.

It would be interesting to know which Nasm features are missing in Fasm to see how them could be implemented either via macros or in the sources.
Post 31 May 2004, 04:18
View user's profile Send private message Yahoo Messenger Reply with quote
fasm9



Joined: 19 Jun 2003
Posts: 439
fasm9
Does nasm used by any other project(include linux itself)??

binutils.. aptitude..
Post 31 May 2004, 04:53
View user's profile Send private message Reply with quote
scientica
Retired moderator


Joined: 16 Jun 2003
Posts: 689
Location: Linköping, Sweden
scientica
Well, afaik most of the asm in the kernel is GAS'd syntax ('nuff said about AT&T syntex...), but I wonder what asm GMplayer etc are usinng (checked, code Sad gas...)
But I guess there isn't much asm in linux at all (could be due to the portabillity issue), but still, asm is used for apps (like for using mmx, 3dNow!, sse[12], isse, etc). The things is taht since nasm has been virutally eded for so long has (imo, sadly) given gas a head start.
Post 31 May 2004, 11:12
View user's profile Send private message Visit poster's website Reply with quote
fasm9



Joined: 19 Jun 2003
Posts: 439
fasm9
binutils -> glibc -> gcc -> linux -> g++,gcj,gnat, -> everything(but nasm creat nothing..)

. fasm -> menuetos -> menuetlibc -> next generation compiler(?)
OR
. fasm -> menuetlibc(native mode) -> menuetos(bootstrappping version) -> native c/c++/java/...

. fasm -> *???*

so anything possible, any machine, any new technology when close raw electronics.

--
glibc <-> dietlibc, uclibc.
Post 01 Jun 2004, 00:46
View user's profile Send private message Reply with quote
scientica
Retired moderator


Joined: 16 Jun 2003
Posts: 689
Location: Linköping, Sweden
scientica
If we just could promote fasm to the big distors (Gentoo, Fedora Core [12], Mandrake, SuSE, etc), and provide working examples, nice tutorials and help convert other asm code to fasm code, I think we can get more and more to realise what we know: fasm is the one and only choice for x86 asm Smile
Post 01 Jun 2004, 15:48
View user's profile Send private message Visit poster's website Reply with quote
pelaillo
Missing in inaction


Joined: 19 Jun 2003
Posts: 878
Location: Colombia
pelaillo
scientica, BTW do you know why Bazik are not longer interested in assembly since he becomes Gentoo's developper? I find it somewhat strange he didn't make available an 'emerge fasm'
Post 01 Jun 2004, 17:44
View user's profile Send private message Yahoo Messenger Reply with quote
fasm9



Joined: 19 Jun 2003
Posts: 439
fasm9
3. Final conclusion: fasm can be used for specialized linux, for example,
directly interact with hardware, like svgalib, directfb.
http://blueflops.sourceforge.net/
http://www.geexbox.org/en/index.html
or you need right compiler written in fasm and lots of time to be convention.

Quote:
I find it somewhat strange he didn't make available an 'emerge fasm'


1. short answer: maybe portability?

=====================

2. long answer: code-base, code-convention are different, linux developer(even kernel developer) seldom touch assembly,

not because they fear it, but they have enough accumulated knowledge how they control hardware through GDB(and objdump, strace, ) WITHOUT assembly,

but Actually, they use assembly everyday when they have to creat something that mission critical. how? in gdb, in gcc, in as, in ld.

when something they wants in low level, they wrap it through llibrary, languAges, interpreter and wrap it again.

--
PS: sometimes C is called high level assembly,
i guess they(Dennis Ritchie, Ken Thompson) translated the machine code to 'C' 1:1 using regular expression* and ?algol?.

Quote:

Introduction to 80X86 Assembly Language and Computer Architecture
by Richard C. Detmer

The Compiler Design Handbook: Optimizations & Machine Code Generation
by Y. N. Srikant (Editor), Priti Shankar (Editor)

Computer Organization and Design Second Edition : The Hardware/Software Interface
by David Patterson (Author), John Hennessy (Author)

Computer Architecture: A Quantitative Approach
by John L. Hennessy, David A. Patterson, David Goldberg

Computation in Living Cells: Gene Assembly in Ciliates (Natural Computing Series)
by Andrzej Ehrenfeucht (Editor), Tero Harju, Ion Petre, David M. Prescott, Grzegorz Rosenberg

Kernel Methods for Pattern Analysis
by John Shawe-Taylor (Author), Nello Cristianini (Author)

Algorithms and Data Structures: The Science of Computing (Electrical and Computer Engineering Series)
by Douglas Baldwin, Gregory Scragg

Fundamentals of Embedded Software: Where C and Assembly Meet
by Daniel W. Lewis (Author)

Assembly Language and Computer Architecture
by Anthony J. DOS Reis

The Art of Compiler Design: Theory and Practice
by Thomas Pittman (Author), James Peters (Author)

Engineering a Compiler
by Keith Cooper (Author), Linda Torczon (Author)

Optimizing Compilers for Modern Architectures: A Dependence-based Approach
by Ken Kennedy (Author), Randy Allen (Author)

Modern Compiler Design
by D. Grune (Author), H. Bal (Author), C. Jacobs (Author), K. Langendoen (Author)

Linkers and Loaders
by John Levine (Author)


*: http://www.papert.com/articles/embodiments.html
Post 02 Jun 2004, 00:06
View user's profile Send private message Reply with quote
pelaillo
Missing in inaction


Joined: 19 Jun 2003
Posts: 878
Location: Colombia
pelaillo
fasm9 wrote:
1. short answer: maybe portability?


Not enough reason to left 80%* gentoo users without fasm Wink

*-This is a guess, of course
Post 02 Jun 2004, 03:57
View user's profile Send private message Yahoo Messenger Reply with quote
Mac2004



Joined: 15 Dec 2003
Posts: 313
Mac2004
I have used NASM previously a lot. I think Fasm produces nowdays much more better code than Nasm.

Ie. Writing with Nasm and using REP MOVS commands causes the output produced by Nasm to crash in spite of same code working in fasm. Opcodes outputted by nasm are not correct in this case.

And there are many other cases where it is sometimes difficult say why simple code is not working at all and it has been tested on other assemblers as well.

regards,
Mac2004
Post 04 Jun 2004, 05:22
View user's profile Send private message Reply with quote
crc



Joined: 21 Jun 2003
Posts: 637
Location: Penndel, PA [USA]
crc
Quote:
1. short answer: maybe portability?


This *is* enough of a reason for most distros to ignore FASM (and apps written in assembly language as a whole). While some distros do include NASM, the versions are almost always broken, and are always out of date. What is needed is a good, popular application to be written in assembly before distro makers will start including FASM.

I still prefer NASM, but then again, once FASM has native BeOS and FreeBSD ports, it'll run on all of the OSes I use, and I'm starting to like some of its macro facilities. I already include it in my personal Linux distro which I'll release someday...
Post 04 Jun 2004, 13:02
View user's profile Send private message Visit poster's website Reply with quote
pelaillo
Missing in inaction


Joined: 19 Jun 2003
Posts: 878
Location: Colombia
pelaillo
crc wrote:
...once FASM has native BeOS and FreeBSD ports, it'll run on all of the OSes I use, and I'm starting to like some of its macro facilities. I already include it in my personal Linux distro which I'll release someday...

crc, what about creating a native port of Fasm for FreeBSD?

I hope yor distro to see the light soon so it will become the first distro that includes Fasm. What other features are you intended to add to your distro?
Post 04 Jun 2004, 13:24
View user's profile Send private message Yahoo Messenger Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 7756
Location: Kraków, Poland
Tomasz Grysztar
Post 04 Jun 2004, 13:38
View user's profile Send private message Visit poster's website Reply with quote
crc



Joined: 21 Jun 2003
Posts: 637
Location: Penndel, PA [USA]
crc
My Linux distro is homegrown. It fits on a floppy, and has two Forth interpreters (IsForth & RetroForth), FASM, RetroLisp, and a crude BASIC interpreter. I have a really simple shell, but will be switching to the KISS shell before I release my distro later this month. (BTW, it does not use any of the GNU tools with their bloatware!). There are three text editors (a clone of VI, and two homegrown ones) as well. Everything is statically linked or written in assembly and uses direct system calls, so file sizes tend to be less than 12k per program.

I've just started working with FreeBSD. Once I understand the system calls better, I'll see if I can write a FreeBSD port of FASM Smile
Post 05 Jun 2004, 01:25
View user's profile Send private message Visit poster's website Reply with quote
pelaillo
Missing in inaction


Joined: 19 Jun 2003
Posts: 878
Location: Colombia
pelaillo
It will become the fastest linux out there. Looking forward in order to become a fan Smile .
Post 05 Jun 2004, 15:11
View user's profile Send private message Yahoo Messenger Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page Previous  1, 2

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar. Also on YouTube, Twitter.

Website powered by rwasa.