OSDev.org
https://forum.osdev.org/

boot2c - a simple way to write standalone programs for i386
https://forum.osdev.org/viewtopic.php?f=2&t=35010
Page 1 of 1

Author:  luke64 [ Mon Sep 30, 2019 7:00 am ]
Post subject:  boot2c - a simple way to write standalone programs for i386

Hi there,

I was recently wondering how hard would it be to run C programs on i386 without an OS, and created a GitHub repo to share my approach. I traded portability for simplicity, so it's not the most correct way, but maybe someone will find it useful:

https://github.com/luke8086/boot2c

Any feedback will be appreciated!

Author:  iansjack [ Mon Sep 30, 2019 8:38 am ]
Post subject:  Re: boot2c - a simple way to write standalone programs for i

You ask in your readme.md
Quote:
So why bother doing such a thing in 2019?
I've got to agree - why, when it is so simple to produce bootable DOS media which would allow you access to more facilities?

Author:  luke64 [ Mon Sep 30, 2019 9:41 am ]
Post subject:  Re: boot2c - a simple way to write standalone programs for i

Quote:
I've got to agree - why, when it is so simple to produce bootable DOS media which would allow you access to more facilities?

Well, the whole premise was not to use any operating system.

Author:  bzt [ Fri Oct 04, 2019 5:19 am ]
Post subject:  Re: boot2c - a simple way to write standalone programs for i

Hi,

luke64 wrote:
I was recently wondering how hard would it be to run C programs on i386 without an OS
Are you familiar with Bellard's Tiny C compiler? It is capable of compiling and running C programs in memory (no disks involved). It is perfectly valid to do some script like this under Linux:
Code:
#!/usr/local/bin/tcc -run
#include <stdio.h>

int main()
{
    printf("Hello World\n");
    return 0;
}
Using this feature you can truly boot a C program directly, compiled at boot time. However you'll need to integrate a minimal libc at least.

Cheers,
bzt

Author:  alexfru [ Fri Oct 04, 2019 10:48 am ]
Post subject:  Re: boot2c - a simple way to write standalone programs for i

Or Smaller C + e.g. BootProg (or FreeDOS).
Unreal mode is supported by the compiler.

Author:  eekee [ Fri Dec 27, 2019 4:13 pm ]
Post subject:  Re: boot2c - a simple way to write standalone programs for i

luke64 wrote:
I was recently wondering how hard would it be to run C programs on i386 without an OS, and created a GitHub repo to share my approach. I traded portability for simplicity, so it's not the most correct way, but maybe someone will find it useful:

If I was writing my OS in C, I'd almost be interested. :) I wouldn't because I'm not so keen on gcc & clang. I'd rather use Watcom or bcc which takes away the fun for you because they can do this already. Or I guess Smaller C, which is evidently better than bcc and might be better than Watcom for making bootable images. I'm a bit impressed by the build process producing a USB boot image, USB boot is a bit difficult. Char-cell snake gives me retro feels. :) If you add editing and search to hexview, it could be a useful debugging tool for native OSdev. Especially regexp search; could you just link in a suitable library?

Page 1 of 1 All times are UTC - 6 hours
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/