Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

seven programming languages on one floppy (Developers)

posted by kerravon, Ligao, Free World North, 21.03.2023, 05:39

> As pointless as some people consider it, I've long wondered what (in
> theory) to put on a 1.44 MB 3.5" programming floppy for FreeDOS.
>
> However, my criteria are that it must be Free/Libre (i.e. redistributable)
> and must actually be used by someone!

I am interested in this proposal, but can you elaborate on what the situation might be?

Because you've specified "must actually be used".

Can you give me a theoretical use case where someone would be using a 1.44 MB floppy?

Would this be on a real computer after a nuclear holocaust and civilization is being rebuilt? Or perhaps if you lock someone in a basement with that real or emulated hardware and told them that was the only thing available - it was either that or watch ants?

> MAWK, miniSed, P5 Pascal, Alice Pascal, SmallerC, SubC, PicoC, DX Forth,
> NASM16 or TinyAsm, FASMD, a72, BWBASIC, SmallAda, ???

Enhancing SubC using SubC would be a worthy project that may come close to fitting on a floppy.

Especially if you're allowed to distribute the source as a zip and unzip onto a hard disk.

Below is something from the PDOS documentation. Switching to Freedos will save some space. But you will hit another problem - SubC is so big that it no longer fits into small memory model, so you need to switch it to medium, large or huge first. But you can probably overcome that problem if you use a DOS extender. But then I think you will lose the supporting tools.

Anyway, that's why I ship both an older SubC that is self-compiling and an enhanced SubC built with Watcom large memory model on the PDOS/86 distribution. Theoretically it might just be enough so that you don't have to zap machine code, and can instead do all your programming in a subset of C (and that subset can be lifted if you spend effort).

BFN. Paul.



If your hard disk breaks, it is touch-and-go whether you can continue
to develop SubC on the single 1.2 MB floppy disk. Here are some rough
technical specs of the "state of play":

Line of code:

pdpclib (C library) 20k
pdos (operating system) 30k
pdmake (build program) 1k
pdcc (C preprocessor) 7k
subc (C compiler) 6k
pdas (80386 assembler) 4k
pdar (a.out archiver) 800
pdld (a.out linker) 800
msged (editor) 25k

Executable size:

pdos 119k (kernel) plus 77k (shell, which includes pdpclib, about 37k),
plus 39k (msvcrt.dll C library), plus 37k (kernel32.dll Win32 interface)
pdmake 11k
pdcc 53k
subc 66k
pdas 27k
pdar 11k
pdld 11k
msged 194k (includes statically linked pdpclib, about 32k)

Main SubC source code is about 130k in size, 119k for the object code.
The archive is 125k, plus you will need two copies of the executable at
138k each. All of this, plus the above executables, comes to around
1165k, so may squeeze onto a 1.2 MB floppy.

Note that PDOS-generic would save space by having only one copy of the
C library in the OS and the shell, msged and SubC would all be using
that, thus saving about 4 * 30k = 120k.

 

Complete thread:

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