BDS C

From Wikipedia, the free encyclopedia
Jump to: navigation, search
BDS C
Original author(s) Leor Zolman
Initial release 1979; 36 years ago (1979)
Operating system CP/M
Type Compiler
License Public domain
Website www.bdsoft.com/resources/bdsc.html

BDS C (or the BD Software C Compiler) is a compiler for a sizeable subset of the C programming language, that ran on and generated code for the Intel 8080 and Zilog Z80 processors. It was the first C compiler for CP/M.[1] It was written by Leor Zolman and first released in 1979 when he was 20 years old. "BDS" stood for "Brain Damage Software".

BDS C was very popular and influential among CP/M users and developers in the 8-bit microcomputer era. It ran much faster and was more convenient to use than other Z80-hosted compilers of the time. It was possible to run BDS C on single-floppy machines with as little as 30K of RAM - something of a minor miracle by comparison to most other commercial compilers which required many passes and the writing of intermediate files to disk. Around 75,000 copies were sold, including a stripped down Japanese incarnation.

A number of important commercial CP/M products were written in the BDS C subset of the C language, including PeachText from PeachTree Software, MINCE and Scribble from Mark of the Unicorn, and most of the software in the Perfect Software suite including Perfect Writer, PerfectCalc, PerfectSpeller and PerfectFiler (which suite was bundled with the Kaypro).

BDS C supported pointers and was very memory efficient, with fast compilation speeds. Weak points were that the floating point math routines were incompatible with the Unix C compiler's, and its relocatable object files were not compatible with the Microsoft assembler, making it more difficult to integrate C code with assembly language.[2]

BDS C was bundled with a significant subset of the Unix system written in about 1980, called MARC (Machine Assisted Resource Coordinator). This effort in some ways resembled GNU, though MARC was to be able to run CP/M software through emulation. Unfortunately MARC's author, Ed Ziemba, perished in a snorkeling accident before he could complete the project.[1]

In 2002, with its commercial viability long past, Leor Zolman released BDS C's source code into the public domain, thus making it free software. Written in 8080 assembly language, the code is now mostly of historical rather than practical interest, but it is interesting to peruse for anyone wishing to see how sizeable programs for small computers were written in those days.

See also[edit]

References[edit]

  1. ^ "The Official Book for the Commodore 128". BDS-C was the first version of C on the market for CP/M. It has evolved over the years into a very bug-free product preferred by many users. The language is not as complete as the one described by Kernighan and Rit chie's The C Programming Language (Prentice-Hall, 1978), but it does contain a large subset of the important features. 
  2. ^ "The Official Book for the Commodore 128". 

External links[edit]