flat assembler
Message board for the users of flat assembler.
Index
> Main > Why not OMF 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 ... |
|||
05 Aug 2007, 07:02 |
|
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
|
|||
05 Aug 2007, 07:13 |
|
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 |
|||
05 Aug 2007, 07:58 |
|
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 |
|||
05 Aug 2007, 08:23 |
|
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. |
|||
05 Aug 2007, 08:26 |
|
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).
|
|||
05 Aug 2007, 14:11 |
|
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. |
|||
05 Aug 2007, 15:52 |
|
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.
|
|||
05 Aug 2007, 22:05 |
|
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 |
|||
05 Aug 2007, 22:14 |
|
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 |
|||
06 Aug 2007, 06:09 |
|
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. |
|||
06 Aug 2007, 10:05 |
|
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".
|
|||
06 Aug 2007, 10:23 |
|
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 |
|||
06 Aug 2007, 10:40 |
|
MichaelH 06 Aug 2007, 11:26
Awesome Loco, just what I was looking for, thank you.
|
|||
06 Aug 2007, 11:26 |
|
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 |
|||
06 Aug 2007, 16:28 |
|
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" >_< |
|||
07 Aug 2007, 10:37 |
|
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! |
|||
07 Aug 2007, 17:55 |
|
f0dder 08 Aug 2007, 00:29
rugxulo: never actually used CC386, but I've downloaded it a couple of times during the years . IMHO if you're going to do C/C++ development, you might as well use a full optimizing compiler (intel, microsoft, or GCC). But I'd consider playing with CC386 if needed a compiler to output code for one of my VMs, should be easier to deal with than GCC :]
|
|||
08 Aug 2007, 00:29 |
|
rugxulo 12 Dec 2007, 14:59
|
|||
12 Dec 2007, 14:59 |
|
Goto page 1, 2 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.