Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

Smaller C compiler (tests under emulation) (Announce)

posted by alexfru(R), USA, 08.05.2015, 09:32

> I never read nor frequented news://alt.os.development before,
> but I somehow stumbled upon an old post from last October:
>
> > Another thing that could help with testing under DOS is some
> > simple tooling and scripting to build the compiler, write it
> > and a bunch of tests and batch files to a floppy image, run
> > stuff from it in a VM, then get back the log from the floppy
> > image. I haven't researched automation with DOSBox, VirtualBox
> > and the like. I imagine, not everyone of them provides
> > programmatic interface to create/update/start/stop a VM.
>
> I'm far from an expert. Plus most people indeed don't have
> the interest to attempt things like this (at least not for DOS).
>
> BTW, in an effort to be brief, I'll just post a few relevant
> links here:
>
> 1). http://en.wikipedia.org/wiki/Mtools (also, 7-Zip 7z can extract)
> 2). ftp://ftp.winimage.com/extrac21.zip
> 3). http://www.freedos.org/software/?prog=vmsmount
> 4). http://www.freedos.org/wiki/index.php/VirtualBox_-_Chapter_6
> 5). http://en.wikibooks.org/wiki/QEMU/Devices/Storage
> 6). http://www.dosemu.org/docs/README/1.4/x724.html
> 7). http://rufus.akeo.ie/
> 8). http://qemu.weilnetz.de/

I do have my own tools to create a FAT12-formatted floppy and populate
it with files. But the idea of writing DOS batch files for this is
putting me off. :)

> I've still been working on my single-floppy .img (FreeDOS) MetaDOS
> distribution (0.2, still unreleased). The original version was
> ultra minimal and somewhat useless (and broken). This one, while
> still somewhat weak, is heavily improved. It uses packet drivers
> to enable networking (mTCP's FTP, Watt-32 built Wget or Links2),
> at least under VBox or QEMU.

Is it just FreeDOS kernel w/ network support?

> My point is that I (privately, manually) run naive tests occasionally
> just to make sure some things (still) work, e.g. rebuilding old NASM,
> rebuilding the kernel, some random other silly things. E.g. my TP-ish
> Befunge-93 interpreter, which I sometimes use (snapshot from FTP)
> FreePascal's ppcross8086 (Win32-hosted cross-compiler) under HX (since
> there still isn't a self-hosted DOS version!). BTW, they don't even
> use NASM (nor WLIB) by default anymore, only internal bin writer.
>
> I did see that you said you'd filed bugs against OpenWatcom. I still
> haven't tried the 2.0-pre releases, although Jiri did update his
> unofficial snapshot last month. I keep meaning to try to rebuild
> NASM with it (which is, AFAIK, totally broken and unsupported
> for that compiler due to bugs), but it's not important enough.

Is the last commercial version of Watcom (10.x/11.x?) less buggy,
do you know? After all, it was Watcom with which a bunch of popular
games for DOS (e.g. Doom, Descent, etc) were compiled.

> I don't even remember when it last built correctly (with OW),
> probably 2.09-ish. Not sure about DJGPP, haven't tried natively.
> I think they only cross-compile (for DOS via DJGPP) from Linux
> , which might make things harder (./configure never works well
> anywhere else).
>
> http://sourceforge.net/projects/openwatcom/files/current-build/
>
> Did I mention that I'm using a RAM driver (now unmaintained) by
> Jason Hood that won't assemble in newer NASMs (due to his very
> weird nasm.mac macros)? Yeah, fun fun fun. Oh, and the FreeDOS
> kernel also requires NASM to rebuild.
>
> Did any of this help? I feel like I just mostly rambled (again, sigh).

Not really/not yet. :)

Btw, I'm working on implementing BSS section support in Smaller C,
so the binaries are going to shrink somewhat (~40KB for a set of
smlrc.exe, smlrl.exe, smlrcc.exe). Of course, something like
PKLITE could be used to make them even smaller and the library
files can have their local symbols stripped off, but even now
my compiler fits onto a 1.44MB floppy together with NASM without
using compression. :)

One day I was pondering the idea of making a tiny DOS that would
only support the functions used by the compiler. :) The problem
is NASM, which uses lots of DOS functions. OTOH, there's FASM,
but it isn't compatible enough with NASM/Smaller C. A development
system on a floppy is kinda cool. :)

 

Complete thread:

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