(I'm late to reply to this, sorry!!)

On Fri, May 5, 2017 at 12:33 PM, Andreas K. Foerster <a...@akfoerster.de> wrote:
> I have written a small "four in a row" game.
> Some may know this game under the name "connect four",
> It's small and not very exciting, but maybe you DOS-people
> find it usefull.

Useful? No. Entertaining? Yes.   :-)

> http://akfoerster.de/dl/akf-software/row4.zip
> Background:
> I'm always fascinated with small programs, small as can be.
> Then I came across Bruce's C compiler. I read it could cross-compile
> for DOS, but only up to 64kB.

I think it's "small" memory model (64 kb code + 64 kb data/stack) but
indeed limited to 64 kb .COM output.

> My first thought was that this is very
> small... But then I thought, wait a minute... my very first computer
> only had 16kB of RAM. At that time 64kB wasn't considered small at all!

64 kb is indeed a lot of code ... but only in assembly. HLLs tend to
bloat up a lot more (esp. due to "dumb" linkers or big and complicated
functions like printf).

> So, I started a journey to explore, what I could do with such an
> "enormous memory"...
> You should never judge a program by the size of the binary.

Alignment also wastes a ton these days. People will tolerate huge
binaries in the vain hope of more speed. (UPX, FTW!)

> In fact in the beginnig this program was actually larger with less
> functionality, until I started to optimize it.

I don't know Forth, but I think it's the king of small code. There are
some insanely talented Forth developers, but indeed a lot of it is
very arcane and hard to use. Still, they seem to know all the tricks
in the book. They excel at cramming everything into one small

Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Freedos-devel mailing list

Reply via email to