Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

32-bit MSDOS (Announce)

posted by marcov, 03.07.2021, 15:35

> and able to run on almost every 80386 + OS
> in existence so long as the free supporting
> runtime is provided (HX/Wine).

Wine and ReactOS already run, HX and wdosx worked fine (without msvcrt) a few years back with the 2.4 and 2.6 versions that were still 9x compatible. Afaik HX supports quite some -W stuff too.

> > People
> > normally do such things only when they are trying to create VERY small
> > executables, because it will have various side effects beyond doing less
> > calling of the operating system API. So again, you should probably
> > just let your OS provide more API stubs.
>
> My C90 utility executables are very small too.
> Like 4k or 6k.

FPC has not really steered towards absolute minimizing of binary sizes. We chose more function over form. Current minimal sizes are 30kish.

More or less because the only actual use of extremely small binaries for normal major targets are bragging rights. It is all hot air, and rarely about solving practical problems.

That said, somebody is working (slowly) on supporting the FPC rtl in a dll, and then minimal sizes sink somewhat to 10k and even below that.

IOW the same solution as C. But minimal sizes are not the reason for this, the reasons for the rtl-in-dll direction is more to share the same RTL state between dlls and mainprogram.

> If simple Pascal utilities are a similar size,
> by virtue of leveraging msvcrt.dll the same
> way, that's something I'd like to see.

I agree with mceric here. You risk having to rewrite minimize programs to suit the minimal C functionality, reducing the compiler to some basic C equivalent syntax and libraries only.

IMHO that is pointless. Pascal programmers will see that as regression and not touch it, even more so if their existing programs require modification.

> But to even have proof of concept I need to
> know how to get gccwin to generate Pascal
> calling convention and I don't know if an
> appropriate keyword even exists. I guess I
> could have an assembler stub that accepts
> Pascal convention and calls the C counterpart.

Pascal can directly call C counterparts. Just do the
glue code in pascal and call the C function. Then you
don't need stubs or nothing.

 

Complete thread:

Back to the forum
Board view  Mix view
22632 Postings in 2109 Threads, 402 registered users, 369 users online (0 registered, 369 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum