flat assembler
Message board for the users of flat assembler.

Index > Main > FASM1 vs FASMG

Author
Thread Post new topic Reply to topic
DOS386



Joined: 08 Dec 2006
Posts: 1905
DOS386 23 Sep 2016, 18:19
Are the differences between FASM1 and FASMG documented somewhere?

(http://board.flatassembler.net/topic.php?p=178756#178756 2015-Mar)

- FASMG lacks all those Intel instructions
- FASMG lacks all those formats MZ PE ELF ...
- FASMG can support other CPU's (http://board.flatassembler.net/topic.php?t=19389)
- FASMG lacks TIMES and ALIGN (latter has limited usefulness, fills with NOP's only)
- FASMG lacks @F @B @@ (http://board.flatassembler.net/topic.php?t=19446)
- FASMG lacks the preprocessor and the "fix" directive, macros are processed "later", this saves much memory (but the increased need for macros costs other memory) (http://board.flatassembler.net/topic.php?t=19366 http://board.flatassembler.net/topic.php?t=7019)
- FASMG lacks DEBUG features, they would have to be implemented in macros (http://board.flatassembler.net/topic.php?t=19434)
- FASMG suports the EMIT directive (http://board.flatassembler.net/topic.php?t=19438)
- FASMG refuses to work if output filename is not specified
- FASMG allows to bunch errors, while FASM1 aborts after just 1 error (there was a thread about this, I just can't find it)
- FASMG is slower (factor 150 ?) I'll test on my cool Pentium 1 laptop
- FASMG is less bloated (factor 2.4) 48 KiO only ... below 64 KiO segment limit
- FASMG has no DOS version yet
- FASMG has no IDE yet

Today I tried to selfcompile FASMG ... works while the same (?) 0.98 version from 2 days ago did NOT.

What's the point of the large version string (source does not match the EXE) ?

BUG: manual says "0.97"

EDIT : enhanced from big thread

_________________
Bug Nr.: 12345

Title: Hello World program compiles to 100 KB !!!

Status: Closed: NOT a Bug


Last edited by DOS386 on 23 Sep 2016, 19:41; edited 7 times in total
Post 23 Sep 2016, 18:19
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20448
Location: In your JS exploiting you and your system
revolution 23 Sep 2016, 18:23
DOS386 wrote:
- FASMG is less bloated (factor 2.4) 48 KiO only ... below 64 KiO segment limit
The word "bloated" suggests to me that it has something unnecessary. Do you think fasm has unnecessary things? Also, if you include all the necessary macros for fasmg to become equivalent in operation to fasm does it still come in as smaller than fasm?

Although this metric is completely irrelevant IMO. But I guess the three people in the world that still have working floppy drives will be happy with the smaller size.
Post 23 Sep 2016, 18:23
View user's profile Send private message Visit poster's website Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8359
Location: Kraków, Poland
Tomasz Grysztar 23 Sep 2016, 18:32
DOS386 wrote:
Are the differences between FASM1 and FASMG documented somewhere?
There was this big thread where I discussed many of the differences even before fasmg was first released.
Post 23 Sep 2016, 18:32
View user's profile Send private message Visit poster's website Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1905
DOS386 23 Sep 2016, 18:49
Thanks.

> There was this big thread

1+1/2 years ago

Could it be that the "unrealistic idea" has become true with FASMG?

http://board.flatassembler.net/topic.php?t=7019 "[unrealistic idea]Decrease FASM memory usage" 2007-May
Post 23 Sep 2016, 18:49
View user's profile Send private message Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8359
Location: Kraków, Poland
Tomasz Grysztar 23 Sep 2016, 19:31
DOS386 wrote:
> There was this big thread

1+1/2 years ago
This should not matter if it is the information on differences between fasm and fasmg languages that you are looking for. Not much has changed since then, other than implementing some features that I promised but were still not ready on the first release, like the floating-point numbers. I had the language of fasmg designed in detail before I started implementing it, because a careful design of all the relations within the language was needed to make something that would not fall apart.

DOS386 wrote:
Could it be that the "unrealistic idea" has become true with FASMG?
This question has no straightforward answer, because the differences between languages also enforce huge differences in the implementation. While fasmg generally does not save on memory and creates lots of symbol tables and string/file caches, it also does not generate an entire preprocessed source as a one big text in memory like fasm does - when a macro is called in fasmg, the lines are processed directly from that macro definition.
Post 23 Sep 2016, 19:31
View user's profile Send private message Visit poster's website Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1905
DOS386 23 Sep 2016, 19:39
> does not generate an entire preprocessed source
> as a one big text in memory like fasm

So the problem does not exist anymore as described in the thread, but FASMG needs other memory due to the many complex macros. Maybe I'll test this at some time.

> if it is the information on differences between
> fasm and fasmg languages that you are looking for

YES it is.

> I had the language of fasmg designed in detail before I
> started implementing it, because a careful design

This is a very uncommon and very good attitude Smile
Post 23 Sep 2016, 19:39
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< 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-2025, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.