logo
[ Otter mixing chemicals ]

COMPILERS / ASSEMBLERS


[ 16 Bit OS DOS and W31 Homepage ]

Users who boot to 16 Bit DOS have many free DOS compilers and free DOS assemblers to chose from.  The DOS compilers and DOS assemblers listed below execute in 16 Bit DOS but the DOS assemblers will also assemble for `386 only' mode if that is what you require.  DOS compilers and DOS assemblers not listed on this page may be as good as or even better.  I have listed those that I have used myself or friends have recommended to me.

Ray Duncan was 'Mister DOS' at one time.  I have located an online transcript, in plain text, of his book "Advanced MS-DOS Programming - The Microsoft(R) Guide for Assembly Language and C Programmers".  A fantastic reference for anyone wanting to program in DOS using the best possible information.  This is one LARGE page of text (an entire book).  I would recommend saving this page to your hard drive where it can be loaded into a GUI word processor for reading.  It is NOT in 80 column format.

Dennis M. Ritchie and Brian W. Kernighan created (more or less) the C language and here we have their book "The C programming Language" describing this language.  This book is affectionately referred to as "The White Book" or simply "The K&R".  Not recommended as a first introduction with no previous programming experience whatsoever.  Terse and to the point written by programmers for programmers.

"The Art of Assembly Language Programming" by Randall Hyde is easy enough to locate once you know it exists but I thought I would save you some time.  This link offers HTML, PDF, and offline versions (plain text?) plus the published commercial version.

Curing the Pascal crt initialization runtime error 200 on fast machines : C't magazine has released a new patch for existing Pascal software that will work with hardware >450MHz.  Robert AH Prins has also released his optimized versions of the Borland TP5.0/5.5/6/BP7 CRT unit.  This archive contains the modified CRT.PAS file and .OBJ files for all routines to allow users of Delphi 1 to 'roll their own'.  The main improvement of the unit is the removal of the RTE 200 bug in the Delay() function.  It also allows the use of extended (F11/F12/etc) keys and it will (try to) not reset extended text-modes.  The technique ensures that RTE 200 will never ever reoccur, no matter how fast PCs will become in years to come.  This CRT unit uses 386 instructions and should not be used on 8086/88 or 80286 PCs.

Freeware Downloads

BORLAND - DOS Turbo C v2.01, DOS Turbo C++ v1.01 and v1.50 - DOS Turbo Pascal v1.0, v3.02, and v5.5 - all of these are now freeware (requires login).  I purchased the DOS version of Borland's Turbo ANSI C++ v1.01 Professional (the Turbo Assembler and Profiler come with it) back when it was state-of-the-art and continue to use it by modifying MAKE files in archives.  It is very Microsoft C compatible and usually works if I get the MAKE file rewritten properly.  Borland's C++ v1.01 will install and compile code on an XT, not sure about the others?  I know it works because that's where it was orginally installed, on my XT.

PACIFIC - ANSI C compiler and IDE, formerly shareware now freeware (v7.51, 1996).  From HI-TECH: "This compiler is MS-DOS, not Windows, based, but it will run in a DOS box under Win3.11 ...".  Early versions were K&R compatible and a very small install (as compilers go).  Used the Pacific C compiler to test code in the K&R book describing the C language.  Some of the code doesn't compile if typed in exactly as printed because the book is wrong, not the compiler.

DJGPP 32 bit hardware required for this one.  I have not used this myself and only know it by reputation.  Reputed to be a good compiler?  Complete 32-bit C/C++ development system for 386 (and higher) PCs running DOS.

MASM I would guess that this requires 32 bit hardware but maybe not?  I don't use it, I use Borland's TurboASM.  How to get the required assembler and linker from free publicly available downloads from Microsoft.  An involved series of downloads in my opinion but if this is what you want?

NASM - NASM- Netwide Assembler.  Free portable assembler for the Intel 80x86 microprocessor series, which uses the traditional Intel instruction mnemonics and syntax and is portable between operating systems and hardware platforms, assembling and executing on MS-DOS, Windows 95, Windows NT, OS/2, Linux and other Unix clones on 8086, Alpha, SPARC and RiscPC hardware.  Authors: Simon Tatham, Julian Hall.
NOTE: If you are reading this you may have an interest in this author's attempt to produce the smallest possible Linux binary begining with 'C' code and ending with ASM code.  Well written informative and entertaining for the 'geek' in all of us.  Tweaking for size was a popular topic for ASM programmers at one time.  See also my OPTION DOS utility at 100 bytes to dupe what MSDOS CHOICE can do in a batch file (compatible with ALL versions of DOS).

SLC - A BASIC compiler from the author of TOFFEE the IRC client, MOONROCK, and JAFFA the DOS based web server.

OBERON - If you find this legacy friendly OS/Compiler leave it where you found it.  With a heritage as next-gen MODULA2 it's tempting but with ETH's child-like "maintainers" I fear Oberon will never become a fully realized OS or language for the real world and the LINZ version is no longer being developed.


Shareware Download

ASIC © - BASIC language compiler creates very small executables.  Also do a search of Simtelnet for ASIC addons if you decide you like ASIC.  I like it.

MOONROCK © - BASIC language clone compiler used to create TOFFEE IRC by it's author.


[ Up Arrow ]
Valid HTML 4.01!
© Charles Angelich 2001