Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

Advocate software bloat (Miscellaneous)

posted by ecm Homepage E-mail, Düsseldorf, Germany, 25.12.2025, 17:56

> Optimization is a response to constraints. Severe constraints force
> "rationing" of resources, similar to fiscal responsibility. There can be a
> zen-like beauty in choosing what to omit, versus Everything Everywhere All
> Of The Time!!@!

I am a little inclined to my "go everywhere, do everything" mantra, refer to my blog.

The latest outgrowth of this is the Master Control Program (lDOS MCP), named as a joke, which includes three kernels (plus a boot menu to select one of the three), plus a device driver, plus three DOS applications, plus more than 60 Extensions for lDebug, and optionally plus a 7zball of sources, all in a single file.

This single-file approach means it cannot be loaded by some FreeDOS loaders as a kernel (<= 128 KiB limit), and likewise not as a device driver by some DOS versions, because these check or want to load the entire file rather than just the necessary parts.

> Under a minimalist philosophy that appreciates zen-like beauty, ed(1) might
> be seen as a tool intended for editing source code. Having a single source
> file larger than total memory might be taken as a sign that the code needs
> to be re-factored into a more modular design. :-P

I did break apart the debugger into many source files over the years, for instance:

ldebug/source$ find . -iname '*.asm' -o -iname '*.mac' > 20251225.fil
ldebug/source$ cntlines -q -u @20251225.fil
Files:          183
Bytes:          2995368
Total lines:    141597
 Blanks:        17187
 Comment only:  24698
 Actual code:   99712
ldebug/source$ find . -maxdepth 1 -iname '*.asm' -o -iname '*.mac' > 20251225.loc
ldebug/source$ cntlines -q -u @20251225.loc
Files:          65
Bytes:          1821955
Total lines:    82806
 Blanks:        9122
 Comment only:  18592
 Actual code:   55092
ldebug/source$


But if we look at the biggest files there's still several ones exceeding 64 KiB:

ldebug/source$ ls -lgG *.asm *.mac --sort=size | head -n20
-rw-r--r-- 1 194502 Dec 25 17:36 debug.asm
-rw-r--r-- 1 173458 Dec 25 17:36 run.asm
-rw-r--r-- 1 168800 Dec 25 17:36 init.asm
-rw-r--r-- 1 150954 Dec 25 17:36 expr.asm
-rw-r--r-- 1 133923 Dec 25 17:36 boot.asm
-rw-r--r-- 1 113518 Dec 25 17:36 lineio.asm
-rw-r--r-- 1  98915 Dec 25 17:36 uu.asm
-rw-r--r-- 1  79351 Dec 25 17:36 aa.asm
-rw-r--r-- 1  63186 Dec 25 17:36 msg.asm
-rw-r--r-- 1  58218 Dec 25 17:36 symbols.asm
-rw-r--r-- 1  54519 Dec 25 17:36 rr.asm
-rw-r--r-- 1  45499 Dec 25 17:36 bb.asm
-rw-r--r-- 1  43291 Dec 25 17:36 dd.asm
-rw-r--r-- 1  37646 Dec 25 17:36 debug.mac
-rw-r--r-- 1  27025 Dec 25 17:36 mm.asm
-rw-r--r-- 1  25347 Dec 25 17:36 immasm.asm
-rw-r--r-- 1  23962 Dec 25 17:36 ssshared.asm
-rw-r--r-- 1  23197 Dec 25 17:36 dishared.asm
-rw-r--r-- 1  18319 Dec 25 17:36 serialp.asm
-rw-r--r-- 1  16510 Dec 25 17:36 ints.asm
ldebug/source$

---
l

 

Complete thread:

Back to the forum
Board view  Mix view
23153 Postings in 2179 Threads, 404 registered users (0 online)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum