flat assembler
Message board for the users of flat assembler.

Index > Main > fasm packaging as a project for the community

Goto page 1, 2, 3, 4, 5  Next
Author
Thread Post new topic Reply to topic
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8351
Location: Kraków, Poland
Tomasz Grysztar 25 Nov 2007, 22:46
After a short talk about the problems with fasm's maintenance I had with vid today, I have decided that it would be a good idea to give a job of enhancing fasm's standard headers and macros, and packaging it all, to the other people (leaving to myself only the continued work on fasm's core).

Therefore I'm now looking for people that would like to contribute and help with doing this. This would mean, in particular:

  • maintaining the Win32/Win64 headers, adding the missing structures and equates, adding headers for more libraries and interfaces
  • maintaining the set of standard macros, and also properly documenting them
  • preparing the installation package for Windows, which would install fasm's core with all the additional headers and macro sets, and set up the environment variables, etc.
  • making some kind of headers set for the Linux programming
  • more ideas? please post them here


After we agreed how to assemble some group of people to work on such packages (we still have a fasm's account on SourceForge, it may be useful for this purpose), I would rename the current downloads on the fasm's official website to the "core downloads" (and I will still maintain them myself), while adding links to those extra packages to the download page aswell.

What do you think about it?


Last edited by Tomasz Grysztar on 07 Feb 2019, 09:00; edited 1 time in total
Post 25 Nov 2007, 22:46
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 25 Nov 2007, 22:57
I would prefer single maintainer (not me), or very few maintainers (including me Wink ), who will agree on solid design for all packages. Anyone could submit content to package, but it will have to go through some checking / fixing by maintainer.

Purpose is to make sure that all packages will remain synchronized, and to prevent duplication and mess. By duplication i mean state when common file shared among multiple packages will be updated in one, but not in other administered by someone else. This could be also solved by having one "source" package for all distributions and build packages from it with some kind script - I do this pretty successfully with FASMLIB distributions.

We could also think about some more "massive" (all-you-ever-need) distribution, something like MASM32.

For maintainers, I would prefer anyone who already has spent considerable time on board, is regulary posting, and proved his skills in area he will be responsible for.

If this topic becomes "messy" i will moderate offtopic talk out, to make it easily readable for everyone. Post only on-topic.


Last edited by vid on 26 Nov 2007, 00:45; edited 1 time in total
Post 25 Nov 2007, 22:57
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4624
Location: Argentina
LocoDelAssembly 25 Nov 2007, 23:50
I post regulary but my skills are not so good though. If not enough maintainers appears then I offer myself for the project, otherwise I prefer much more prepared people for this task.
Post 25 Nov 2007, 23:50
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4330
Location: Now
edfed 26 Nov 2007, 00:23
but the best is to let you ( tomasz ) do this.
only you can make a good maintenance of your soft.
because youy're the father of this code and you know each component.
Wink
Post 26 Nov 2007, 00:23
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 26 Nov 2007, 00:36
Quote:

but the best is to let you ( tomasz ) do this.
only you can make a good maintenance of your soft.
because youy're the father of this code and you know each component.
Wink

actually, tomasz is currently busy with more important things, and that's why we (including tomasz) believe that (well regulated) community can do a bit better job Wink


Last edited by vid on 26 Nov 2007, 00:45; edited 1 time in total
Post 26 Nov 2007, 00:36
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
Madis731



Joined: 25 Sep 2003
Posts: 2139
Location: Estonia
Madis731 26 Nov 2007, 07:41
Actually I've always thought we'd there be possible invoke MsgBox 0,"aaa","bbb",0 with win32ax/p headers, but not with plain win32a.
I really wish it could be handled this way with simple win32a.inc

Okay - that was maybe too much in detail - but the general idea is to summon more headers from C-type dynamic libraries and make FASM
more useful. A few days ago I found myself coding Allegro and from a
sample on this board (tg2d topic) I discovered headers that were minimal and I had to "upgrade" them.

There have been (and I think will be in the future) compatibility resolving macros. There are very helpful when porting from other assemblers. This is a great and welcome effort.

Maybe moving instruction support to a more external place where it can easily be edited. It is very optional because new instructions tend to rise only as often as 6 month intervals. Moreover the optimality of the instruction parsing algorithm can be hit this way.

Some additional tools can be very handy sometimes. Like *.h => *.inc converter bundled with FASM or maybe (if we ever get this far) *ASM => FASM source converter. I imagine the latter being the size of Fresh or even bigger Razz
Post 26 Nov 2007, 07:41
View user's profile Send private message Visit poster's website Yahoo Messenger MSN Messenger Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8351
Location: Kraków, Poland
Tomasz Grysztar 26 Nov 2007, 18:48
And what do you think about making some CVS or SVN for the headers development?
Post 26 Nov 2007, 18:48
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 26 Nov 2007, 19:03
Quote:
And what do you think about making some CVS or SVN for the headers development?

If there are more maintainers, it is definitively needed. If there is single maintainer, still desireable.

I would personally prefer SVN.
Post 26 Nov 2007, 19:03
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8351
Location: Kraków, Poland
Tomasz Grysztar 26 Nov 2007, 19:08
vid wrote:
I would personally prefer SVN.

Yes, for personal choice I would also prefer this one.
Post 26 Nov 2007, 19:08
View user's profile Send private message Visit poster's website Reply with quote
Madis731



Joined: 25 Sep 2003
Posts: 2139
Location: Estonia
Madis731 26 Nov 2007, 19:33
Okay lets take the first example - implementing SSE4.1/.2 and SSE5.
How would that go - what's the...erm..scenario Smile

considering SVN is used, it would be something like updating the version of X86(_64).INC or something?
Post 26 Nov 2007, 19:33
View user's profile Send private message Visit poster's website Yahoo Messenger MSN Messenger Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias 26 Nov 2007, 19:34
svn = software version number
cvs = code version system
Post 26 Nov 2007, 19:34
View user's profile Send private message Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 26 Nov 2007, 20:35
Madis: no, you didn't understand that. FASM compiler will still be developed solely by Tomasz.

Things that will be left for community will be macros, headers, and additional tools. As for example, consider MASM and MASM32. Hutch takes MASM compiler from MS, adds tons of crap around (macros, libraries, documents, etc...), and makes package (or distribution) from that. Another example is linux kernel vs. GNU/linux distribution.

Maintainer(s) will take use FASM from tomasz, and they will take care for macro files, headers, maybe libraries and tools, and package those.


Last edited by vid on 26 Nov 2007, 22:02; edited 1 time in total
Post 26 Nov 2007, 20:35
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 26 Nov 2007, 20:49
Post 26 Nov 2007, 20:49
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
Madis731



Joined: 25 Sep 2003
Posts: 2139
Location: Estonia
Madis731 26 Nov 2007, 21:55
@vid: Hmm okay Smile understood now!

@tom: I think that what vid posted, were the acronyms used extensively in computer communities.
Post 26 Nov 2007, 21:55
View user's profile Send private message Visit poster's website Yahoo Messenger MSN Messenger Reply with quote
f0dder



Joined: 19 Feb 2004
Posts: 3175
Location: Denmark
f0dder 26 Nov 2007, 23:54
I'd opt for SVN as well, although something like the relatively new BZR could become pretty interesting, especially since it makes it a lot easier for casual contributers to contribute, without having to go through the administrative hell of either giving them repository write access (dangerous!) or dealing with diff/merge (bothersome).
Post 26 Nov 2007, 23:54
View user's profile Send private message Visit poster's website Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1614
Location: Ukraine
shoorick 27 Nov 2007, 05:59
as well as everybody from time to time meet structures/constants absent in fasm includes and make own additional include - it is possible just have a kind of pinned feedback thread in windows section where anybody can post these things picked from psdk *.h, msdn or somewhere else.

then we need just somebody to "manage" this feedback.

after entering "feedbacks" into "official" includes this topic even can be emptied to be clear.
Post 27 Nov 2007, 05:59
View user's profile Send private message Visit poster's website Reply with quote
Frank



Joined: 17 Jun 2003
Posts: 100
Frank 27 Nov 2007, 07:19
shoorick wrote:
a kind of pinned feedback thread


That sounds very good. First, the technical hurdle for submitting new entries is then very low, which means that more new entries come in. Second, suggestions for new entries would then automatically get a kind of peer review -- errors can be spotted by the community before they make it into an official distribution.
Post 27 Nov 2007, 07:19
View user's profile Send private message Reply with quote
Frank



Joined: 17 Jun 2003
Posts: 100
Frank 01 Dec 2007, 22:54
No obvious progress over the past days ...

... maybe we could start small? LocoDelAssembly volunteered as a maintainer; shoorick suggested pinned threads as the I/O mechanism for changes and new entries.
Post 01 Dec 2007, 22:54
View user's profile Send private message Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 01 Dec 2007, 23:37
I agree. Let's agree on Loco as maintainer (he'll be good one), and discuss nature of those packages.
Post 01 Dec 2007, 23:37
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
kohlrak



Joined: 21 Jul 2006
Posts: 1421
Location: Uncle Sam's Pad
kohlrak 02 Dec 2007, 00:45
Also, i just noticed the post (and didn't read it all) and if the point hasn't been discussed yet, let's try to keep some packages optional. FASMLIB and other custom libraries should probably stay outside the standard downloads, especially since it's probably still under development and being revamped and things like that. The only windows macros and strucs that i can think of that are to be added are the various struc types and some more resource macro. If you start adding to the standard we end up creating astdlib (parody of cstdlib). We need to keep the stuff included with fasm away from contraversy (like how to clear the eax register) or stuff that's dependent on situation (like using fpu for normal floating point code, but sse for masses of floating point calculations). We need stuff that no one can really argue with. Let's not go overboard and add random code to the lib just because it looks good. Remember that one advantage to fasm is that it's not a large mess of billions of library junk like masm and other assemblers but not low level only like other compilers. Fasm is a nice mix of high level and low level stuff. Let's try not change that or even add too much to the point you have to take a course on fasm's macros along with assembly just to use fasm. This is just my opinion, but i really like it when fasm fits on a floppy.
Post 02 Dec 2007, 00:45
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page 1, 2, 3, 4, 5  Next

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

Website powered by rwasa.