Is there a way to get FB 0.23 to output a NON-OS specific .exe ??
===============================================
I was going over the MINIX code that Linus Torvalds started Linux with.
Minix is now in version 3.?.? http://www.minix3.org/
I was thinking of doing a small OS and designing my own file system.
Compiler Raw output
-
- Posts: 148
- Joined: Nov 12, 2007 11:46
- Location: Russia
AS and LD can afaik produce a binary that loads on a certain address.albert wrote:I thought that AS.EXE or GAS.EXE could output intel binaries, that run on the processor and not a specific OS.
Is there an AS.EXE -?? (switch) to output a 64bit intel binary?
See the generation of the various stages of bootloaders in the various grub and distribution sources.
I think what i need to do first is produce a console and grafix windowing system.
I think a controls library that just holds parameters, and then calls a draw routine to translate the vectors to grafix or text_mode.
That would allow text_mode , grafics_mode , skins , etc.. to all work from a single lib.
I think a controls library that just holds parameters, and then calls a draw routine to translate the vectors to grafix or text_mode.
That would allow text_mode , grafics_mode , skins , etc.. to all work from a single lib.
Do you know any framework supporting platform-independent executables, containing x86-Machine Code? I don't. If you do, inform us about it.
Anyway, why are you need to have a plattform indipendent version of the programm. Just recompile you program for any target or publish the source code.
If you mean writing freestanding code (whitch means you eighter use a custom system interface or having direct access to the hardware (ring 0)) you could use the -nodeflibs, option. Anyway you couldn't use any runtime based functions in this case, whitch means no print or input function, no var-lengh strings, no allocate, etc. (You could also avoid this functions and compile you programm the default way (be aware about the binary format). Then it should be free-standing to.
The work to produce x86-64 machine code, isn't done by the assembler (as) or the linker (ld), but by a compiler whitch is able to do so.
Anyway, why are you need to have a plattform indipendent version of the programm. Just recompile you program for any target or publish the source code.
If you mean writing freestanding code (whitch means you eighter use a custom system interface or having direct access to the hardware (ring 0)) you could use the -nodeflibs, option. Anyway you couldn't use any runtime based functions in this case, whitch means no print or input function, no var-lengh strings, no allocate, etc. (You could also avoid this functions and compile you programm the default way (be aware about the binary format). Then it should be free-standing to.
The work to produce x86-64 machine code, isn't done by the assembler (as) or the linker (ld), but by a compiler whitch is able to do so.
First, there is no "non-OS exe", because "exe" is already a OS-specific format (DOS/Windows).
However, you might consider taking a look at this: http://wiki.osdev.org/FreeBasic_Barebones
However, you might consider taking a look at this: http://wiki.osdev.org/FreeBasic_Barebones
Thanks Cherry!!
The OS's page has hundreds of OS's in production.
But alot of the links are broken due to project retirement (They gave up or got to busy with life to continue them).
Just a compiler or assembler that can spit out raw machine code. is what i was looking for. a "processor specific binary". like a BIOS DevKit.
The OS's page has hundreds of OS's in production.
But alot of the links are broken due to project retirement (They gave up or got to busy with life to continue them).
Just a compiler or assembler that can spit out raw machine code. is what i was looking for. a "processor specific binary". like a BIOS DevKit.