flat assembler
Message board for the users of flat assembler.
![]() Goto page 1, 2 Next |
Author |
|
DOS386 05 Aug 2007, 07:02
> Hi I started using FASM for my project yesterday
> I wrote a module in Fasm and compiled it to Obj COFF ![]() IIRC, only free assemblers supporting OMF are NASM, LZASM, and (MA$M syntax, bad (?)) WASM ... > Can u upgrade this FASM awaiting answer from Tomasz ... |
|||
![]() |
|
penguinglx 05 Aug 2007, 07:13
Well , actually I could u NASM for my project but I dont know if NASM support SSE x instructions , So I decided to move my butt to FASM since it's been said that FASM support MMX,SSE,SSE2,3 , and one more thing I dont like NASM much coz it has too many syntaxes , and Im kinda lazy to read its doc
|
|||
![]() |
|
Niels 05 Aug 2007, 07:58
Is 'Borland' refering to the FreeCommandLineCompiler...
Changing to http://www.delorie.com/djgpp/, you can use FASM-output right away. Niels |
|||
![]() |
|
Niels 05 Aug 2007, 08:23
penguinglx wrote: and Im kinda lazy to read its doc Maybe for you it's different, but when I started with ASM the NASM doc was one of the reasons to pick NASM, it's a rather 'easy' switch later on to FASM; There is reason to switch later on. ![]() Niels |
|||
![]() |
|
Japheth 05 Aug 2007, 08:26
the COFF2OMF tool of Digital Mars C++ can convert .OBJ files to OMF.
Another option is to use OW's wlink, which accepts both OMF and COFF modules, but my experience with wlink is that is has problems with files generated by Non-OW compilers/assemblers. |
|||
![]() |
|
Tomasz Grysztar 05 Aug 2007, 14:11
I guess the only true reason why it never got implemented into fasm was my own stubbornness. I did not like OMF format, the COFF and ELF specifications were much more appealing to me, and thus I never even tried to incorporate such support into fasm (also, a few things would have perhaps to be done a bit differently inside fasm in order to get decent OMF support).
|
|||
![]() |
|
gunblade 05 Aug 2007, 15:52
Would it not be possible to simply "emulate" (wrong word.. but cant remember the right one) OMF? I've seen people re-writting the ELF header by hand, and then just telling fasm to compile it as a flat binary. It was in some competition to try and get the smallest (working) ELF header i believe.
The only pain might be dealing with the "sections" and alignments, but it still must be possible, just a bit more hastle. |
|||
![]() |
|
MichaelH 05 Aug 2007, 22:05
Hi gunblade, have you got a link to that competition? I've been meaning for a long time to make a handmade elf formatted app for fasm.
|
|||
![]() |
|
LocoDelAssembly 05 Aug 2007, 22:14
Michael, take a look at http://ellocodelassembler.googlepages.com/elf.zip (ignore "formatter example.asm" for now and just take a look into "example.asm").
Also take a look at http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html which was of great help when I was "designing" my elf package. PS: And look http://www.muppetlabs.com/~breadbox/software/tiny/ as well |
|||
![]() |
|
penguinglx 06 Aug 2007, 06:09
Niels wrote: Is 'Borland' refering to the FreeCommandLineCompiler... Well , there was one time I used DJGPP and NASM for my DOS projects , But I gave it up coz I couldnt use VESA 2.0 32-bit Subroutines (may be there was some problems since I was on Windows Xp ,and maybe It didnt allow me to do so or so...), I was unable to get the Base Address of the Video Ram . I did everything and try to read carefully VESA doc 2.0 to make it work as 32-bit style . But It didnt make it (may be I need to read WIndows 95 Secrets to get it on). Anyway I moved to BCC 5.5 FREE CMDLINE CMPILER I have just taken a look at that link for DJGPP 2.0 , they say you need some auxiliary tools to work with DJGPP 2.0 for Windows Apps or another compiler that AUX pack is RSXNTDJ , but all the links are dead now . And more over does DJGPP 2.0 support OPENGL Libs and headers ? Imma try Japheth's way . Anyway thanks |
|||
![]() |
|
f0dder 06 Aug 2007, 10:05
Niels wrote:
Doesn't DJGPP still use gnu-coff rather than ms-coff format? Causes very funny effects if you try to use ms-coff object files with a gnu-coff linker, because of relocation format differences. penguinglx: do yourself a favor and find "vc2003 toolkit" from Microsoft, it's a far better compiler than Borland's. Unfortunately Microsoft doesn't offer the download anymore, since in their mind vc2003 has been superceded by their 2005 Express editions (which are fine and all, but a much larger download). Only worry about DJGPP if you really want to make DOS apps, but imho even then there's better choices (win32 compiler with a PE-executable supporting dos extender). If you want to use GCC (which DJGPP does), check out the http://www.mingw.org project. |
|||
![]() |
|
vid 06 Aug 2007, 10:23
f0dder: FASM can output some "COFF" format to, not just "MS COFF". I never used it, so i am not sure if it is gnu-coff of different COFF "implementation".
|
|||
![]() |
|
DOS386 06 Aug 2007, 10:40
pengu wrote:
Quote: was one time I used DJGPP and NASM for my DOS projects , But I gave it up coz I couldnt use VESA 2.0 32-bit Subroutines (may be there was some problems since I was on Windows Xp ,and maybe It didnt allow me to do so or so...), I was unable to get the Base Address of the Video Ram . I did everything and try to read carefully VESA doc 2.0 to make it work as 32-bit style . But It didnt make it Unsurprisingly ![]() 1. It might be a good idea to decide for what OS or "OS" you want to develop before selecting a compiler ![]() 2. DGJPP is indeed a very bad choice for Vi$ta or XP ![]() 3. VESA 2.0 is the preferred way to develop DOS GUI apps ![]() 4. It didn't work because it's crippled off from XP ![]() Quote: I have just taken a look at that link for DJGPP 2.0 , they say you need some auxiliary tools to work with DJGPP 2.0 for Windows Apps Quote: does DJGPP 2.0 support OPENGL Libs and headers ? Probably no ... would be useless and redundant ![]() fodder wrote: Quote: worry about DJGPP if you really want to make DOS apps Right. Quote: imho even then there's better choices (win32 compiler with a PE-executable supporting dos extender). Disagree ![]() Quote: want to use GCC the http://www.mingw.org project Right. _________________ Bug Nr.: 12345 Title: Hello World program compiles to 100 KB !!! Status: Closed: NOT a Bug |
|||
![]() |
|
MichaelH 06 Aug 2007, 11:26
Awesome Loco, just what I was looking for, thank you.
|
|||
![]() |
|
rugxulo 06 Aug 2007, 16:28
I think OBJ/OMF has way too many quirks to be supported (easily, at least). YASM has had this as a TODO for quite a while and (AFAIK) hasn't started yet. But OpenWatcom does support it because it's the "only format which truly supports all x86 features" (or something like that, I dunno how true that is).
Yeah, I'm sure it's easier / better (IMO and Tomasz's too, probably) to just use NASM or LZASM instead of expecting FASM to add it. Else somebody somewhere needs to write a decent COFF2OBJ and put it on Sourceforge!! P.S. NASM "stable" 0.98.39 supports `Pentium', `P6', `MMX', `3DNow!', `SSE' and `SSE2' opcodes (and the newer development branch, 0.99.01, srcs only, supports x86-64 stuff). EDIT: Quote:
Last edited by rugxulo on 12 Dec 2007, 14:57; edited 1 time in total |
|||
![]() |
|
f0dder 07 Aug 2007, 10:37
Imho if you do 32bit development, you don't need OMF.
It's a pretty quirky format indeed, but while it does have some smart things in it, it's too much of a mess to bother with, imho. Especially because of all the vendor extensions that "might not be 100% properly documented" >_< |
|||
![]() |
|
rugxulo 07 Aug 2007, 17:55
There is no advantage to FASM supporting it besides letting you use FASM's strengths (clear syntax? macros? x86-64?) with OBJ-only compilers (e.g. Digital Mars, CC386, OpenWatcom). Just use an assembler that already supports it instead of waiting forever for FASM to get it. And for stuff from scratch, as vid says, you don't need it.
P.S. f0dder, ever tried CC386 yet? It's got HX support now! ![]() |
|||
![]() |
|
f0dder 08 Aug 2007, 00:29
rugxulo: never actually used CC386, but I've downloaded it a couple of times during the years
![]() |
|||
![]() |
|
rugxulo 12 Dec 2007, 14:59
|
|||
![]() |
|
Goto page 1, 2 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2023, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.